扒虫篇-Bug日志 Ⅱ

2018-09-12 18:33:12 浏览数 (1)

1.一个奇葩的注册App上传时出的蛋疼问题

事情是这样的:一个风和日丽的下午,我正在 itunesConnect 中注册一个APP,基本信息都保存了,在编辑版本信息时,都弄的差不多了,可是没有保存,结果不巧,停电了......,等来电之后我再次注册时:

Paste_Image.png

可是我这里并没有显示出来啊,而且老板定下的名字也不能改啊,于是我尝试各种解决办法:关闭浏览器清理电脑,再次登录;换台电脑再次登录;重启电脑,再次登录。可是还是如此。期间,itunesConnect竟然抽风宕机了

Snip20161122_1.png

没办法了,我都想着给苹果的客服打电话了,可是第二天早上,登录账号后发现

Paste_Image.png

它居然出现了,尼玛,,,苹果服务器出的问题。

2. Xcode8上一个模拟器运行时的报错。

Snip20161010_1.png

这是个不经常出现的问题,一旦出现模拟器就无法以Debug的形式,连接调试了。真机上可以运行。

解决方法:

先New 一个Scheme。

Paste_Image.png

点击 Mangage Scheme ,

Paste_Image.png

在这个界面中删除旧的 Scheme,选择使用新创建的 Scheme即可解决。

3. 使用服务器返回的 NSCFBooL 类型的数据需要使用方法 boolValue

问题是这样的,使用服务器返回的一个bool类型的字段,使用时 直接

if(){}就是这个值是 YES的意思,可是不管返回的是什么,这个if 条件都成立。无法使用。

Snip20161126_9.png

解决办法: 需要使用 boolValue 才可以正真传化为 Bool类型。

Snip20161126_10.png

4. 获取某一行cell的崩溃性Bug

这是一个大家一不小心就会犯的错误,我也是经常躺枪,当时记住了,事后又忘记出错了。

Snip20161129_3.png

解决办法 加上 inSection:0 进行 NSIndexPath 的初始化。

Snip20161129_4.png

5. 一个自定义弹框,点击页面上任何地方都会触发消失手势

~ 一个自定义弹框中有一个灰色的背景,点击可以让整个弹框都消失,点击中心的白色编辑区域,不应该消失,可是现在,点击中心的白色编辑区域也会触发加在灰色背景上的消失手势。

解决方法: 原因是因为,白色的区域 addSubView 在了 灰色背景视图上,手势加在灰色视图上,因为白色的父视图是灰色的视图,所以点击白色的区域也会触发其父视图的手势,,,,,只需要把白色视图不加在 灰色区域即可,这样,点击白色区域就不会触发灰色背景上的消失手势了。

6. 集成海康监控SDK 时,导入了系统类库后还是报了这么多错误。真机、模拟器都报错。

~

看了一个问题:发现 “std”跟C 语言混编有关,也的确,工程中用到了混编。有.mm文件

Snip20161212_3.png

解决方法 如下图设置即可,这也是很多C 混编都可能出现的问题解决方案

XCode 的 Build Setting中 的 C Standard Library默认选择了 libc (LLVM C standard library with C 11 support)选项, 这个表示支持c 11的最新特新, 但是它只支持ios5以上,所以如果要使用这个选项,有两个选择: 第1个选择就是 将Deployment Target中 改为5.0以上,一般不会这样,因为我们一般想支持的sdk越低越好,尽量支持低版本的ios设备。 第2个选择就是 将这个 C Standard Library选项改为 libstdc (GNU c standard library ),它支持最低到4.3 .

代码语言:javascript复制
由上面的介绍可知,这次的报错可能是 海康的SDK是在iOS5之前开发的,并不支持 ios5以上,
所以需要将这个 C   Standard Library选项改为 libstdc   (GNU  c    standard  library )以支持更低的版本

7. 网络请求回来数据解析后Block回调布置页面很久不显示

~ #debug断点调试的时候,代码明明已经执行了,但是就是要过很久之后才会显示 #猜测是分线程的问题,加上这句通知主线程的语句后, #即可立即显示需要布置的UI dispatch_async(dispatch_get_main_queue(), ^{ xxxxxxxx });

8.模拟器上显示图片,真机运行后却不显示

~ 这的确是一件蛋疼的事,Clean?,卸载重装,都还是不显示...... 你可以选择砸了手机,说一句:“WTF,破手机,这手机有问题” 也可以这样:把那些不显示的图片拖到 PS里面,快速导出为 PNG,然后删除原来的图片,导入新生成的图片,造次Clean,运行就会出现了。 这是因为模拟器不会校对文件格式的正确性,而真机会,那些不显示的图片其实不是真正的 PNG格式

.

9.APP上传APPStore 报错 -22421

Snip20161228_1.png

. 直接Cancel掉,重新Upload一次就行了,如果还不行,等几分钟再试一次。 原因就是:苹果服务器那边繁忙导致的,并不是我们打包的问题。

10.一次模拟器运行报错

Snip20170106_1.png

解决方法: 重置模拟器即可解决。

0 人点赞