开发 遇见的小错误

1.报错: Treating Unicode character as whitespace

解决方法:   

可能是由于粘贴网页上的代码的时候两行之间的回车引起的,两行之间重新输入回车就行...。


2.报错:dyld: Symbol not found: ___NSArray0__ 

问题描述:

dyld: Symbolnotfound: ___NSArray0__ Referenced from: /private/var/mobile/Containers/Bundle/Application/5C6F5D69-5D14-4C07-BEA4-F410C18C66CC/DGBao.app/DGBao Expectedin: /System/Library/Frameworks/CoreFoundation.framework/CoreFoundationin/private/var/mobile/Containers/Bundle/Application/5C6F5D69-5D14-4C07-BEA4-F410C18C66CC/DGBao.app/DGBao

解决方法:


3.遇到错误:CLLocationManagerDelegate不调用didUpdateLocations

原因:  

这是因为xcode升级造成的定位权限设置问题。 工程升级到xcode6编译时需要iOS8 要自己写授权,不然没权限定位。

解决方法:

首先在 info.plist里加入对应的缺省字段 ,值设置为YES(前台定位写上边字段,前后台定位写下边字段)

NSLocationWhenInUseUsageDescription   //允许在前台获取GPS的描述

NSLocationAlwaysUsageDescription   //允许在前、后台获取GPS的描述

4.遇到错误:warning: push.default is unset;

问题描述: 

在执行 git push 时看到如下消息:

warning: push.default is unset; its implicit value is changing in

Git 2.0 from 'matching' to 'simple'. To squelch this message

and maintain the current behavior after the default changes, use:

git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

git config --global push.default simple

解决方法

‘matching’ 参数是 Git 1.x 的默认行为,其意是如果你执行 git push 但没有指定分支,它将 push 所有你本地的分支到远程仓库中对应匹配的分支。而 Git 2.x 默认的是 simple,意味着执行 git push 没有指定分支时,只有当前分支会被 push 到你使用 git pull 获取的代码。

根据提示,修改git push的行为:

git config --global push.default matching

再次执行git push 得到解决。

5.报错:objc_msgSend too many arguments to function call,expected 0, have3


解决方法:


开发 遇见的小错误_第1张图片

6.Presenting view controllers on detached view controllers is discouraged

原因:

a,b,c 三个viewcontroller,a作为根视图,b.view 添加到a上,在b中模态(presentViewController)弹出c.

这种情况就会出现标题的警告

解决方案:

[[UIApplication sharedApplication].keyWindow.rootViewController presentViewController: loginVC animated: YES completion:nil];

7.报错: EXC_breakpoint(code=EXC_ARM_BREAKPOINT,subside=oxdefe) Enable zombie Objects

原因:

僵尸对象

8.报错:The identity used to sign the executable is no longer valid.

错误描述:

我出现这个错误的情况,程序提交app store之后,第二天,在手机上运行程序,出现"The identity used to sign the executable is no longer valid",详细内容

Please verify that your device‘s clock is properly set, and that your signing certificate is not expired。

原因:

你发布的时候,创建了一个PP(简介文件),你真机运行的时候,是debug状态,就不能用你发布时创建的PP文件,只能重新下载你debug状态下的PP文件。简单的说,发布到app store上的PP文件和debug状态下的PP文件是两个文件。

9.[****ViewController respondsToSelector:]: message sent to deallocated instance

原因解析:

某个公共类或系统提供的控件,存在delegate方法,当创建此公共控件的容器类已经销毁,

而这个控件对应的服务是在其它run loop中进行的,控件销毁或者需要进行状态通知时,依然按照

delegate的指针去通知,则会出现这个问题。

解决方法:

创建 MKMapView时设置了delegate

容器类的dealloc方法中要,将其delegate=nil;

10.安装Cocoapods, 更新gem出现的问题。

错误描述: 

执行sudo gem install cocoapods出现错误:

ERROR:Whileexecuting gem ... (Errno::EPERM)Operationnotpermitted -/usr/bin/xcodeproj

解决方法:

sudo geminstall-n /usr/local/bincocoapods

你可能感兴趣的:(开发 遇见的小错误)