别人的iOS精华iOS开发札记

iOS 10 适配过程(持续适配中...)

2016-09-22  本文已影响114人  小布走慢点

1.编译器开启注释

注释快捷键:

command + /

command + alt + / 

在终端输入:sudo /usr/libexec/xpccachectl  
然后重启电脑即可

2.NSLog打印适配

关闭模拟器多余log
Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = disable
//但是关闭了模拟器log导致真机无法显示问题解决方法
#ifdef DEBUG
#define NSLog(...) printf("%f %s\n",[[NSDate date]timeIntervalSince1970],[[NSString stringWithFormat:__VA_ARGS__]UTF8String]);
#else
#define NSLog(...)
#endif

3.文字宽度适配

创建一个Label
然后让它自适应大小,字体大小都是17
最后输出的宽度是不一样的,我们再看一下,下面的数据就知道为什么升级iOS 10之后App
中有的文字显示不全了:
Xcode 8打印          Xcode 7.3打印
1个文字宽度:17.5     1个文字宽度:17

4.权限适配

一些常用的权限配置选项:
 

// 相机
<key>NSCameraUsageDescription</key>
<string>App需要您的同意,才能访问相册</string>
 
// 相册
<key>NSPhotoLibraryUsageDescription</key>
<string>App需要您的同意,才能访问相机</string>
 
// 麦克风:
<key>NSMicrophoneUsageDescription</key>
<string>App需要您的同意,才能访问麦克风</string>
 
// 通信录
<key>NSContactsUsageDescription</key>
<string>App需要您的同意,才能访问通信录</string>

// 位置
<key>NSLocationUsageDescription</key> 
<string>App需要您的同意,才能访问位置</string> 
 
// 在使用期间访问位置
<key>NSLocationWhenInUseUsageDescription</key> 
<string>App需要您的同意,才能在使用期间访问位置</string> 
 
// 始终访问位置
<key>NSLocationAlwaysUsageDescription</key> 
<string>App需要您的同意,才能始终访问位置</string> 
 
// 日历
<key>NSCalendarsUsageDescription</key> 
<string>App需要您的同意,才能访问日历</string> 
 
// 提醒事项
<key>NSRemindersUsageDescription</key> 
<string>App需要您的同意,才能访问提醒事项</string> 
 
// 运动与健身
<key>NSMotionUsageDescription</key>
<string>App需要您的同意,才能访问运动与健身</string> 
 
// 健康更新
<key>NSHealthUpdateUsageDescription</key> 
<string>App需要您的同意,才能访问健康更新 </string> 
 
// 健康分享
<key>NSHealthShareUsageDescription</key> 
<string>App需要您的同意,才能访问健康分享</string> 
 
// 蓝牙
<key>NSBluetoothPeripheralUsageDescription</key> 
<string>App需要您的同意,才能访问蓝牙</string> 
 
// 媒体资料库
<key>NSAppleMusicUsageDescription</key> 
<string>App需要您的同意,才能访问媒体资料库</string>

5.代码适配

//判断当前版本适配(新增)#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
@interface ZXCapture ()<CALayerDelegate>
#else
@interface ZXCapture ()
#endif
上一篇 下一篇

猜你喜欢

热点阅读