扒虫篇-Bug日志 Ⅶ

1. 移除UIView的所有子图层造成的崩溃

//移除所有的子图层
- (void)removeAllSublayer;
{
  for (CALayer *sublayer in self.layer.sublayers) {
      [sublayer removeFromSuperlayer];
  }
}
崩溃了

正确的姿势

for (int i = 0; i

2. 真机调试出现的问题

扒虫篇-Bug日志 Ⅶ_第1张图片

解决办法:iphone 上已经装了标示符一样的APP ,删掉老版本 重新安装即可。

3. 莫名其妙的报unrecognized selector sent to instance


明明是 数组为什么回报 [UILabel addObjectsFromArray:],太奇怪了。

解决办法:把 .h 里面定义的全局变量移动到 .m中,问题出现时, .h 、.m中都有定义全局变量,当我尝试把两者合并到一起的,问题就消失了。

4.使用NSDecimalNumber进行累加计算时出现了崩溃

不可写成,需要一个中间变量做周转,而且 initWithString:@"0"是需要设置的,不能光 init

 allMoney = [allMoney decimalNumberByAdding:money];

最后的代码是这样的:

NSDecimalNumber *allMoney = [[NSDecimalNumber alloc]initWithString:@"0"];
for (ExpensesModel *model in dataArray) {
    NSDecimalNumber *allMoney11 =[[NSDecimalNumber alloc]initWithString:[allMoney stringValue]];
    NSDecimalNumber *money = [[NSDecimalNumber alloc]initWithString:CLEAN(model.je)];
    allMoney = [allMoney11 decimalNumberByAdding:money];
}
footLabel[0].text = [NSString stringWithFormat:@"¥ %@",[allMoney stringValue]];

5. 有时候你使用 po命令就是打印不出来东西?

调成:All Output 模式即可。

6. target specifies product type 'com.apple.product-type.tool', but there's no such product type for the 'iphonesimulator' platform

  • 意思就是:不支持iPhones 平台

  • 解决:选择支持平台为macOS

    扒虫篇-Bug日志 Ⅶ_第2张图片

出现这个问题是因为:我把基于MacOS的项目强制修改为支持 iOS,结果就出现这个报错,并且在选中的模拟器下无法 clean success。

7. 使用objc_msgSend 方法报的错误

解决方法:Setting Enable strict checking of objc_msgSend Calls to NO, solved my issue.

扒虫篇-Bug日志 Ⅶ_第3张图片

8. svn更新代码后打不开.xcodeproj工程文件

svn更新代码后,打开xcode工程文件,会出现 xxx..xcodeproj cannot be opened because the project file cannot be parsed.
因为.xcodeproj工程文件冲突了,然后还是会强制更新,内部文件出现了冲突,所以解析不了文件。
会出现这样的冲突消息。

1.  <<<<<<< .mine  
2.      9ADAAC6A15DCEF6A0019ACA8 .... in Resources */,  
3.  =======  
4.      52FD7F3D15DCEAEF009E9322 ... in Resources */,  
5.  >>>>>>> .r269  

解决方法:

1.对.xcodeproj 文件右键,显示包内容
2.双击打开 project.pbxproj 文件
3.找到以上类似的冲突信息(可以用commad + f 搜索)
4.删除 <<<<<<<,======,>>>>>>这些行
5.保存,退出
6.重新打开.xcodeproj文件即可

9.使用APPlication Loader上传时报错

扒虫篇-Bug日志 Ⅶ_第4张图片

以前的版本好好的,可最近上传api,连续上传了3次都是报这样的错误,看上面的提示好像是网络的问题。可是我立刻上传其他项目的api却是成功的。

扒虫篇-Bug日志 Ⅶ_第5张图片

像这样,一般进度条走到头就算提交成功啦,如果中间出现几次卡住,无网络,重复,这样的情况基本上是有问题的。

最后的解决办法:

  • 1.完全退出了 Xcode(之前是在打开项目的情况下),重置了模拟器(应该无关),(再次打开别的项目后调出APPlication Loader。
  • 2.上传了其他项目的 ipa成功后上传这个之前出现问题的ipa包。
  • 3.一气呵成,上传成功了。

10.证书导出方式错误造成的问题

扒虫篇-Bug日志 Ⅶ_第6张图片
扒虫篇-Bug日志 Ⅶ_第7张图片

上图最大的问题就是在导出证书的时候,把证书的下拉箭头点开了,导出了里面的东西,导出来的东西有时候是不完整的,(话说,测试环境下的证书竟然没有问题!!)正确的方式是直接右键导出,不能像图中那样,这是很隐蔽的错误。

你可能感兴趣的:(扒虫篇-Bug日志 Ⅶ)