IOS开发入门之iOS开发 适配iOS10以及Xcode8
凌雪 2018-09-17 来源 :网络 阅读 990 评论 0

摘要:本文将带你了解IOS开发入门之iOS开发 适配iOS10以及Xcode8,希望本文对大家学Ios有所帮助。

本文将带你了解IOS开发入门之iOS开发 适配iOS10以及Xcode8,希望本文对大家学Ios有所帮助。



现在在苹果的官网上,我们已经可以下载到Xcode8的GM版本了,加上9.14日凌晨,苹果就要正式推出iOS10系统的推送了,在此之际,iOS10的适配已经迫在眉睫啦,不知道Xcode8 beat版本,童鞋们有木有下载过来试试呢?就我的使用来说,总体觉得苹果还是坑不断,但是也在一直进步的啦。下面我就来说说,iOS10的适配以及Xcode8使用上的一些注意点。
   
    一、证书管理
    用Xcode8打开工程后,比较明显的就是下图了,这个是苹果的新特性,可以帮助我们自动管理证书。建议大家勾选这个Automatically manage signing(Ps.但是在beat2版本我用的时候,完全不可以,GM版本竟然神奇的又好了。)
 
   
   
    下面我来说说可能会出现的问题:
1.Xcode未设置开发者账号情况下的截图
   
   
   
   
    解决办法是:大家在Xcode的偏好设置中,添加苹果账号,即可。
2.设备机器未添加进开发者的Device情况下的截图
   
   
     
   
   
   
    解决办法是:大家在官网将设备添加进开发机后,陪下描述文件重新下个描述文件即可。
3.正常情况:Xcode配置登录开发者账号后的图片,耐心等待即可。
   
   
   
   
    等待完成之后的图
   
   
     
   
   
   
    二、Xib文件的注意事项
    使用Xcode8打开xib文件后,会出现下图的提示。
   
   
     
   
   
   
    大家选择Choose Device即可。之后大家会发现布局啊,frame乱了,只需要更新一下frame即可。如下图
   
   
   
   
   
    注意:如果按上面的步骤操作后,在用Xcode7打开Xib会报一下错误,
   
   
   
   
   
   
   
   
    解决办法:需要删除Xib里面

这句话,以及把< document   >中的toolsVersion和< plugIn >中的version改成你正常的xib文件中的值,不过不建议这么做,在Xcode8出来后,希望大家都快速上手,全员更新。这就跟Xcode5到Xcode6一样,有变动,但是还是要尽早学习,尽快适应哟!
   
   
   
    三、代码及Api注意
    使用Xcode8之后,有些代码可能就编译不过去了,具体我就说说我碰到的问题。1.UIWebView的代理方法:**注意要删除NSError前面的 nullable,否则报错。
- (void)webView:(UIWebView *)webView   didFailLoadWithError:(nullable NSError *)error
    {
        [self hideHud];
    }
    四、代码注释不能用的解决办法
    这个是因为苹果解决xcode ghost,把插件屏蔽了。解决方法打开终端,命令运行:  sudo   /usr/libexec/xpccachectl然后必须重启电脑后生效
    注意:Xcode8内置了开启注释的功能,位置在这里
   
   
    快捷键的设置在这里
   
   
   
    貌似Xcode8取消了三方插件的功能,具体可以查阅下Xcode8 Source Editor
   
    五、权限以及相关设置
    注意,添加的时候,末尾不要有空格我们需要打开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 我们需要通过您的地理位置信息获取您周边的相关数据定位的需要这么写,防止上架被拒。
    六、字体变大,原有frame需要适配
    经有的朋友提醒,发现程序内原来2个字的宽度是24,现在2个字需要27的宽度来显示了。。希望有解决办法的朋友,评论告我一下耶,谢谢啦
    七、推送
    如下图的部分,不要忘记打开。所有的推送平台,不管是极光还是什么的,要想收到推送,这个是必须打开的哟✌️
   
   
    之后就应该可以收到推送了。另外,极光推送也推出新版本了,大家也可以更新下。
   
    PS.苹果这次对推送做了很大的变化,希望大家多查阅查阅,处理推送的代理方法也变化了。
// 推送的代理
[]
    iOS10收到通知不再是在[application:   didReceiveRemoteNotification:]方法去处理, iOS10推出新的代理方法,接收和处理各类通知(本地或者远程)
-   (void)userNotificationCenter:(UNUserNotificationCenter *)center   willPresentNotification:(UNNotification *)notification   withCompletionHandler:(void   (^)(UNNotificationPresentationOptions))completionHandler { //应用在前台收到通知   NSLog(@"========%@", notification);}-   (void)userNotificationCenter:(UNUserNotificationCenter *)center   didReceiveNotificationResponse:(UNNotificationResponse *)response   withCompletionHandler:(void (^)())completionHandler { //点击通知进入应用   NSLog(@"response:%@", response);}
稍后我会更新文章,对推送做一个详细的讲解。
8.屏蔽杂乱无章的bug
更新Xcode8之后,新建立工程,都会打印一堆莫名其妙看不懂的Log.如这些
subsystem: com.apple.UIKit, category:   HIDEventFiltered, enable_level: 0, persist_level: 0, default_ttl: 0,   info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 1,
屏蔽的方法如下: Xcode8里边 Edit Scheme-> Run ->   Arguments, 在Environment   Variables里边添加OS_ACTIVITY_MODE   = Disable
   
   
   
        

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之IOS频道!

本文由 @凌雪 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程