iOS开发 开发过程中出现的问题

1: 同事的iPhone5 AppStore下载app提示与设备不兼容:
原因是buildsetting下的build active architecture only 在release环境下也设置成了yes,导致release环境下app只支持Xcode里面配置的几个架构。
修改方法:把release设置成NO即可;





2:项目中使用到了一个controller里面多个view,因为apple自从5.0之后就一直想让我们使用addChildController,所以今天用了这个,但是发现切换时偶尔会遇到白色的背景然后什么内容也没有。
看了下日志有如下的警告

unbalanced calls to begin/end appearancetransitions for

看了下资料因为上个动画还没加结束就开始下一个动画,导致不能成功的切换页面。修改方法:
添加一个属性,先判断是否现在正在进行动画,如果现在有动画就直接return,否则就进行跳转,跳转完成再把属性置为NO即可解决。






3: 今天遇到因为时间问题造成的错误:大概情况:客户端请求接口传过去当前时间,但是用户把系统时间设置成了提前半小时,这样导致接口返回就一直出错了。后来想获取网络上的当前时间,但是也不能保证服务器时间就是标准的网络时间。所以用到当前时间时一定要想出解决方案来获取服务器时间,如果能十分保证服务器和网络同步的话,就获取网络时间。

4:Archive时Archives列表里面只有Other Items的问题

(1)将第三方库Project(Pods)   Build Settings->Deployment->Skip Install 设置为 YES,但项目Project 的Skip Install却要保持为NO。

(2).第三方库Build Phases->Copy Headers中的所有头文件拉到Project下,即Public和Private下不能有任何文件。

(3).修改 Build Settings->Deployment->Installation Directory选项的内容。/Applications 改为$(HOME)/Applications



5:NSCocoaErrorDomain Code=3840:

返回数据的格式不对(JSON text did not start with array or object and option to allow fragments not set)

在网络请求的接受格式里面加上其他类型eg: text/html等。


6.

clang: error: no input files这个问题一般是因为你删除或者移动了某一个文件,但是在你的编译资源里面( project> target > Build Phases> Compile Sources还存在它,只要在(project> target > Build Phases> Compile Sources)里面把那些红色的文件删除掉,就可以编译过了。



7.*** Assertion failure in -[WSMBaseTableView _configureCellForDisplay:forIndexPath:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3599.6/UITableView.m:8035

原因一般是在代理方法里面返回了一个空的cell。但是返回的cell个数不是0.


8.xcode   Command /usr/bin/codesign failed with exit code 1 

解决方法:

打开命令行终端,进入工程根目录,运行命令xattr -rc

  1. Quit Xcode.
  2. Open Terminal.
  3. Typed Command xattr -rc /Users/manabkumarmal/Desktop/Projects/MyProjectHome
  4. Open Xcode.
  5. Cleaned.
  6. Now worked and No Error.
参考链接:https://stackoverflow.com/questions/29242485/command-usr-bin-codesign-failed-with-exit-code-1-code-sign-error


9:
dyld: Library not loaded: /System/Library/Frameworks/UserNotifications.framework/UserNotifications
  Referenced from: /var/mobile/Applications/BCC39BE7-F54F-460A-963B-9238F3E0DA06/
  Reason: image not found
解决办法
arget下的Build Phases标签里,
找到Link Binary With Libraries,
找到UserNotifications.framework,
把status由Required 修改成Optional,然后再运行就可以了。

10.     Invalid bitcode version (Producer: '802.0.41.0_0' Reader'800.0.42.1_0'

方法一:

简单粗暴的方法,使用老版本的SDK,指定SDK的版本,这样可以解决!

方法二:

在Bulid Settings -> Build Options -> Enable Bitcode 改为NO,那么问题来了,Bitcode是什么玩意,老子没见过,不用着急,下面给你介绍Bitcode的作用!


11:解决在Xcode编译出现"_iconv_open", referenced from: 的问题

忘记添加libiconv这个框架  build phases --》link binary with 添加libiconv这个库。


12.2 Terminating app due to uncaught exception 'NSGenericException', reason: '*** Collection <__NSArrayM: 0x600000056920> was mutated while being enumerated.'
原因是在便利数组时修改了数组里面的内容;我的解决方法:使用block:

找到符合的条件之后,暂停遍历,然后修改数组的内容这种方法非常简单哟


[self.buyList enumerateObjectsUsingBlock:^(WSMStoreWineModel *obj, NSUInteger idx, BOOL *stop) {
                
                if (obj.number == 0) {
                    
                    [self.buyList removeObject:obj];
                }
            }];


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值