`

ios 10 适配

    博客分类:
  • ios
 
阅读更多

一、证书管理

 

用Xcode8打开工程后,比较明显的就是下图了,这个是苹果的新特性,可以帮助我们自动管理证书。建议大家勾选这个Automatically manage signing(Ps.但是在beat2版本我用的时候,完全不可以,GM版本竟然神奇的又好了。)

 

 

下面我来说说可能会出现的问题:

 

1.Xcode未设置开发者账号情况下的截图

 

 

解决办法是:大家在Xcode的偏好设置中,添加苹果账号,即可。

 

2.设备机器未添加进开发者的Device情况下的截图

 

 

解决办法是:大家在官网将设备添加进开发机后,陪下描述文件重新下个描述文件即可。

 

3.正常情况:Xcode配置登录开发者账号后的图片,耐心等待即可。

 

 

等待完成之后的图

 

 

二、Xib文件的注意事项

 

使用Xcode8打开xib文件后,会出现下图的提示。

 

 

大家选择Choose Device即可。


之后大家会发现布局啊,frame乱了,只需要更新一下frame即可。如下图

 

 

  • 注意:如果按上面的步骤操作后,在用Xcode7打开Xib会报一下错误,

     

 

  • 解决办法:需要删除Xib里面

     

    <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>

     

    这句话,以及把< 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.苹果这次对推送做了很大的变化,希望大家多查阅查阅,处理推送的代理方法也变化了。

 

// 推送的代理[<UNUserNotificationCenterDelegate>]

 

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);}

 

八、屏蔽杂乱无章的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

 

 

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

分享到:
评论

相关推荐

    单纯聊一聊iOS10适配

    iOS10适配是开发者在升级到新操作系统版本时必须考虑的重要环节,以确保应用程序能够兼容并顺畅地运行。以下是一些关键知识点: 1. **工程改动**: - **工程配置**:Xcode8引入了新的签名设置,用"signing"选项...

    iOS 10 适配知识点总结 - 简书1

    iOS 10 适配知识点总结 iOS 10 适配知识点总结是指在 iOS 10 系统中,开发者需要注意的一些关键点,以确保 App 的正常运行和适配。下面是 iOS 10 适配知识点总结: 1. Xcode 8.0 的使用 在 iOS 10 中,Xcode 8.0...

    iOS10适配(必看)

    iOS10适配是开发者在升级到新系统版本时必须面对的一项工作,因为每个新的iOS版本都会引入一些变化和改进,可能会影响到应用程序的兼容性和功能。以下是对iOS10适配过程中的关键知识点的详细解释: 一、工程改动 1...

    iOS10 适配-Xcode8问题总结及解决方案

    本文将针对iOS10适配Xcode8时可能出现的问题进行总结,并提供相应的解决方案。 首先,权限问题是一个重要的方面。Xcode8引入了更加严格的权限管理机制,访问相机、相册等敏感资源时,如果未在Info.plist中声明相应...

    iOS10适配问题收集整理

    在iOS开发过程中,适配新版本的操作系统是一个重要的任务,特别是当系统引入重大更新时,如从iOS9升级到iOS10。这篇文章主要汇总了一些在iOS10适配过程中遇到的问题及其解决方案。 首先,关于TencentOpenAPI的适配...

    ios项目适配ios6 ios7

    本项目主要关注的是如何将一个iOS项目适配到iOS6和iOS7这两个版本,因为它们之间存在显著的视觉和用户体验差异。iOS7引入了全新的设计语言,这使得许多在iOS6中正常工作的元素在新系统中可能需要调整。下面我们将...

    iOS10适配以及Xcode8使用需要注意的那些坑

    本文主要探讨了在iOS10适配以及Xcode8使用时需要注意的关键点,旨在帮助开发者顺利过渡。 首先,证书管理是iOS开发的重要环节。在Xcode8中,苹果引入了自动证书管理功能,通过勾选"Automatically manage signing...

    iOS自动适配

    // iOS适配 自动适配 手动适配 // 只需要在要适配的控制器上加下面3句话,即可完成自动适配 #pragma mark- AutoAjustAttag - (void)dealloc{ // 销毁参照 [self.view removeRelation]; } - (void)...

    iOS10适配问题点总结

    在iOS开发过程中,每个新版本的发布都会带来一系列的适配问题,iOS10也不例外。本文将详述在升级到iOS10时开发者可能遇到的一些关键适配问题,并提供相应的解决方案。 首先,我们来讨论一下iOS10中关于`nullable`...

    iOS10 适配以及Xcode8配置总结

    本文将深入探讨iOS10的适配问题以及Xcode8的配置要点,帮助开发者解决在升级过程中可能遇到的挑战。 首先,让我们关注Xcode8中的插件问题。在Xcode8发布后,许多开发者发现以往的插件无法正常工作。这是因为苹果...

    iOS10 适配远程推送功能实现代码

    本文将详细介绍如何在iOS10上适配远程推送功能。 首先,要在XCode中开启推送通知支持。在项目的Capabilities部分,确保“Push Notifications”开关已经打开。在XCode7中,这个开关不是必须的,但在XCode8及更高版本...

    IOS屏幕适配

    "IOS 屏幕适配" IOS 屏幕适配是 IOS 开发中非常重要的一方面,涉及到应用程序在不同 IOS 设备上的显示效果。IOS 屏幕适配可以分为两种方法:自动布局(AutoLayout)和autosize。 在 IOS6 之前,屏幕适配一般使用 ...

    Xcode8下iOS10常见报错闪退,字体适配和编译不过的问题及解决方案

    有这个iOS10适配总结,还有这个iOS10适配问题收集整理,还有这个iOS10适配,还有很多其他的。 这个好办,取消nullabl关键字就好。 然后另一个蛋疼的问题来了 问题二,编译不过的问题 蛋疼的clang报错le.. 这个是...

Global site tag (gtag.js) - Google Analytics