iOS开发日志

2018年10月26日

error: Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline."
iPod没有连接上wifi

2018年07月16日
多语言少了一个分号报错

在配置多语言的时候,一直提示.strings文件有问题,看了半天才发现少了一个分号。

2018年07月04日
文件找不到

报这个错误的原因是在使用cornerstone去delete文件之后,project中被删除的文件会变红,此时编译项目就是报这个错误。只需要手动delete project中的红色文件就可以了。

2018年06月01日

dyld: Library not loaded: /System/Library/Frameworks/UserNotifications.framework/UserNotifications Referenced from: /var/containers/Bundle/Application/229D102D-0399-4298-BE02-7373F33F8508/WeCan.app/WeCan Reason: image not found

库问题
2018年04月18日

[iOS]Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL"

服务器地址少了http://

2018年03月07日

运行项目报错 error: Invalid bitcode signature

报错内容

这篇文章中找到了解法,将Build Active Architecture Only中的Debug由NO改为YES,就可以了。

屏幕快照 2018-03-07 上午11.41.11.png

2018年03月07日

有多个系统版本模拟器导致的报错

报错内容

xcode9.2运行的,其他同事都没有问题只有我这台会报这个错误。仔细回想了下,貌似因为要解决iOS8.2系统崩溃的问题,所以就下载了一个8.2的模拟器。其他情况和同事一样。用Xcode9.0打开项目编译就通过了。

2018年03月06日

开发悬浮球组件遇到的问题,意思是缺少一个rootViewController

崩溃内容

步骤是我创建了一个window用来放置悬浮球,借鉴之前开发webRTC的经验,创建一个window,系统会自动将其加载到界面上。

问题代码

搜索了一些网上的做法,他们讲述的都是在实例化appdelegate的window没有指定rootViewController出的问题。和我的原理类似,把注释行打开,这样创建一个控制器给悬浮window就解决了。

2018年01月05日
编译项目xib报错

看左边问题的描述应该是xib文件创建的版本太低了,现在用Xcode9打开项目都无法编译此xib文件。

解决办法
2017年12月09日09:22:48

Failed to bind EAGLDrawable: <CAEAGLLayer: 0x1c002e900> to GL_RENDERBUFFER 1
Failed to make complete framebuffer object 8cd6

webRTC开发群视频连接起来之后,Xcode控制台一直输出这个内容。在仔细审查了代码之后发现没有什么问题,唯一的区别之前peerConnection连接起来的时候开启了视频流,现在在建立peerConnection之后会把localStream中的videoTrack设置为isEnable=NO。这样在- (void)peerConnection:(RTCPeerConnection *)peerConnection didAddStream:(RTCMediaStream *)stream回调方法中用[remoteVideoTrack addRenderer:remoteVideoView];remoteVideoVidew应该是没有内容的,所以导致了这个问题。注释掉这句话之后,程序就能够正常的运行了。之前也遇到过两次这个问题,但是当时都有别的开发任务,等到解决别的开发任务之后,这个问题又消失了,这次终于被解决了,好开森!

2017年11月16日16:00:52

xmpp消息的格式最开始为normal,但是接入了webRTC之后,会针对webRTC的消息新建一个类型chatType。这样哪些没有webRTC功能的软件版本是无法识别这些消息的。

2017年10月26日16:49:56

zhouzewen:TestPrivatePod civet$ pod lib lint --no-clean
-> TestPrivatePod (0.1.2)
- ERROR | [iOS] unknown: Encountered an unknown error (757: unexpected token at '2017-10-26 16:34:55.977 simctl[31232:1227799] CoreSimulator detected Xcode.app relocation or CoreSimulatorService version change. Framework path (/Applications/Xcode8.3.3.app/Contents/Developer/Library/PrivateFrameworks/CoreSimulator.framework) and version (375.21) does not match existing job path (/Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/XPCServices/com.apple.CoreSimulator.CoreSimulatorService.xpc) and version (494.13.6). Attempting to remove the stale service in order to add the expected version.
') during validation.
Pods workspace available at /var/folders/j4/tn0n31j13zg_mjwn2833ltkh0000gn/T/CocoaPods/Lint/App.xcworkspace for inspection.

使用终端上传.podspec文件的时候报错。
之前使用另一台只装了Xcode9的电脑上传过该.podspec文件,换自己的电脑上传的时候报错。因为自己的电脑装了Xcode7.3.3、Xcode8.3.3、Xcode9.0三个版本,打开Xcode9去Xcode->Preference->Locations->Command Line Tools 查看发现用的是Xcode8.3.3和上面的提示相同,更改为Xcode9.0并重启Xcode之后,在次使用上面的命令验证就通过了。

2017年02月17日
更新svn后报错
9 duplicate symbols for architecture x86_64 Linker command failed with exit code

4.png

参考资料
http://blog.csdn.net/crazyzhang1990/article/details/49586049
2017年02月09日
报错Assigning to 'id<XXXDelegate>' from incompatible type 'XXXViewController * const __strong'
XXXViewController控制器没有遵守协议

2017年01月18日
问题 sign控制器的键盘录音不成功。
原因是使用 NSFileManager 的方法 返回的result 为NO
BOOL result = [[NSFileManager defaultManager] copyItemAtPath:voicePath toPath:voiceFile error:nil] ;
voicePath :/Users/mac/Library/Developer/CoreSimulator/Devices/Application/129E469E-69B6-4146-BFCF-DC7F3F178FD7/Documents/test839/chat/name1.aac
voiceFile : /Users/mac/Library/Developer/CoreSimulator/Devices/Application/129E469E-69B6-4146-BFCF-DC7F3F178FD7/Documents/test839/temp/name2.aac
在经过反复调试之后发现,voiceFile,temp文件夹是不存在的。所以copy方法会一直不成功,导致该路径下一直没有语音文件,其他需要用到该文件的控制器没有数据。
但是上面的问题在模拟器上是没有的,模拟器的登录个人账号是存在temp路径的。但在真机上却没有temp目录,最后只能把voiceFile的路径也改到chat/name2.aac,这样就解决了这个问题。

但是在修改的过程中还发现了另外一个隐藏的问题,或者说是疑惑。
录音需要用到的控制器是AVAudioRecorder,一直按着界面上的button 直到手抬起,表示语言录制完毕并发送语言。但是代码中button的touchUp事件,干了两件事情,第一停止录音,这是没有问题的。第二 调用sign控制器的代理方法处理录音文件。模拟器和真机上测试这么干都没有问题。
但是真的没有问题吗?录音文件的生成难道不需要时间?
touchUp的时候录音文件应该是没有生成的,但是在调用sign的代理方法时候,保存语音文件的目录下读取确是有该文件的。当然如果处理器速度很快,生成语音文件是时间小于sign代理方法调用这个方法的时间的话这么写是没有问题的。
这里还有另外一种情况,就是语音文件一早就创建好了,当你按下按钮的时候就开始往该文件中写入内容,touchUP的时候停止写入内容,所以如果这是判断语音文件是否存在是没有问题的。
经测试是第二种情况,touchDown的时候文件就建好了,然后开始写入数据,touchUp的时候停止写入数据。

查看了下AVAudioRecorderDelegate,发现有下面这个方法。

  • (void)audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag;
    表示完成录音之后,这样可以防止语音文件被其他的操作造成问题,比如写入。应该讲sign的代理方法写到这个代理方法中。

2017年06月15日09:39:45
[Xcode8出现AQDefaultDevice (173): skipping input stream 0 0 0x0]
播放语音文件log中一直上面的提示,project没有crash,网上搜索了下按照步骤配置之后解决问题。
参考资料
http://blog.csdn.net/babeishi23/article/details/54694180

2017年06月15日14:08:59
__nwlog_err_simulate_crash simulate crash already simulated "nw_socket_set_common_sockopts setsockopt SO_NOAPNFALLBK failed: [42] Protocol not available"
使用Xcode8打开项目,log不停的提示。解决办法和上面的一样,
project-> Edit Scheme->Arguments ->Environment Variables
添加 name: OS_ACTIVITY_MODE Value: disable

2017年06月15日14:16:46
安卓发送到iOS的音频文件,播放的时候没有声音。
原因是Android发送的音频格式为mp3,iOS这边把音频使用.acc格式保存。导致无法播放,但是采用.amr 格式保存音频文件之后就能正常播放了。

2017年07月12日15:36:37
down了一个二维码的Demo,真机跑的时候提示这个错误。
This app has crashed because it attempted to access privacy-sensitive data without a usage description.
The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data
搜了一下,需要在projext的info.plist文件中增加一个key-value,Privacy - Camera Usage Description,iOS10之后都需要开启权限才能使用响应的功能,参考这里

2017年07月15日16:32:08

framwork重复添加

在LinkBinaryWithLibraries中删除掉多余的framwork就可以了。

2017年07月16日08:54:47

报黄提示说CopyBundleResources中包含.plist文件

百度的解决办法,只要把Build Phases下 Copy Bundle Resources 里的 info.plist文件去掉就可以了。可能是因为修改过info.plist文件,导致其被添加到了这里,实际上不用添加到这里的。

2017年07月17日09:13:39

报黄Directory not found

到Build Settings 下的Search Paths 中找到警告的文件路径删除掉就可以了。百度的解决办法

2017年07月28日11:14:09

Xcode调试的时候变量全部都没有值了,原因是把project schme -> Info -> Build Configuration 改为了Release,所有的变量的值就都会为nil。改回D

2017年08月02日21:59:13

CGPDFDocumentCreateWithURL(url)iOS10 上失效

项目中有个需求是用UIWebView展示pdf发票文件,然后可以把这些发票转成一张张的图片保存到相册中。昨天测试突然提出来保存图片失败。检查了下,最终定位到上面的函数,函数给的url是服务器的pdf文件的url,之前会比较快速的返回结果。但是现在这个函数会过了三四分钟才返回nil的结果。百度的各种说法都尝试了下,没有办法;于是转换思路,用AFNetWorking先把pdf文件下载到沙盒,然后再用CGPDFDocumentCreateWithURL读取沙盒中的pdf文件,就能够返回结果了。问题算是解决了

2017年08月05日08:13:49
  • (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight 没有效果的原因

之前做聊天气泡背景的时候用过一次这个,当时也是半天不起作用;这次又有需求用到,这个操作的图片必须在2x里面才起作用,如果图片是放到1x中是不会有效果的。

2017年09月23日14:45:31

运行Xcode9模拟器iPhone X,一直无法正常运行。

无法运行模拟器

结合这篇文章,发现是刚刚用Xcode8.3打开过工程没有完全退出。但是之前这样混着打开项目也没有问题,但将Xcode8.3完全退出之后,在运行就没有问题了。

2017年09月23日14:51:06

bitcode报错

看ld:信息可以知道是bitcode的问题,但bitcode是上面东西呢?Bitcode适配指南理解Bitcode:一种中间代码这两篇文章可以知道bitcode打开之后,apple可以帮我们优化app。但是如果我们使用的framework中有不支持bitcode的,我们就需要在设置中关闭它,否则项目会一直报错。

关闭bitcode
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容