升级Xcode8、iOS10问题记录

1、webView的代理方法:

  升级前: - (void)webView:(UIWebView *)webView didFailLoadWithError:(nullable NSError *)error

  升级后: - (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error

  要删除NSError前面的 nullable,否则报错。

2.关于触屏事件的一些操作:

  升级前: - (void)touchesCancelled:(nullable NSSet<UITouch *> *)touches withEvent:(nullable UIEvent *)event

  升级后: - (void)touchesCancelled:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

  此处也是修饰词更改即可。

3、运行工程,控制台输出许多无关日志,去掉的方法:

  Edit Scheme -> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = disable

      

  如果写了之后还是打印log,请重新勾选对勾,就可以解决了

  注意::: 虽然这样解决了模拟器打印很多无用信息,但是仍然存在问题,iOS10真机调试NSLog无效,这里的解决办法就是在项目的公共文件里添加如下代码:

4、注释快捷键⌘+/失效

  这个是因为苹果解决xcode ghost。把插件屏蔽了。

  解决方法:命令运行 sudo /usr/libexec/xpccachectl

  然后必须重启电脑后生效。

5.权限以及相关设置

  我们需要打开info.plist文件添加相应权限的说明,否则程序在iOS10上会出现崩溃。注意,添加的时候,末尾不要有空格.

  麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风?
  相机权限: Privacy - Camera Usage Description 是否允许此App使用你的相机?
  相册权限: Privacy - Photo Library Usage Description 是否允许此App访问你的媒体资料库?

  通讯录权限: Privacy - Contacts Usage Description 是否允许此App访问你的通讯录?
  蓝牙权限:Privacy - Bluetooth Peripheral Usage Description 是否许允此App使用蓝牙?

  语音转文字权限:Privacy - Speech Recognition Usage Description 是否允许此App使用语音识别?
  日历权限:Privacy - Calendars Usage Description 是否允许此App使用日历?

  定位权限:Privacy - Location When In Use Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据
  定位权限: Privacy - Location Always Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据
  定位的需要这么写,防止上架被拒。

   

6.推送

  所有的推送平台,不管是极光还是什么的,要想收到推送,这个是必须打开的

        

  处理推送的代理方法也变化了

原文地址:https://www.cnblogs.com/jingxin1992/p/5888994.html