在最新版本的iOS10系统中,如果你的项目中访问了隐私数据,比如:相机、相册、录音、定位、联系人等等,在Xcode8中打开编译的话,统统会crash,控制台会输出下面这样的日志:
这是因为iOS对用户的安全和隐私的增强,在申请很多私有权限的时候都需要添加描述,但是,在使用Xcode 8之前的Xcode还是使用系统的权限通知框。
要想解决这个问题,只需要在info.plist添加NSContactsUsageDescription的key, value自己随意填写就可以,这里列举出对应的key(Source Code模式下)。
// 相册
<key>NSPhotoLibraryUsageDescription</key>
<string>是否允许App访问您的相册</string>
// 相机
<key>NSCameraUsageDescription</key>
<string>是否允许App访问您的相机</string>
// 位置
<key>NSLocationUsageDescription</key>
<string>是否允许App访问您的位置</string>
// 始终访问位置
<key>NSLocationAlwaysUsageDescription</key>
<string>是否允许App通过您的地理位置信息获取您周边的相关数据</string>
// 在使用期间访问位置
<key>NSLocationWhenInUseUsageDescription</key>
<string>是否允许App通过您的地理位置信息获取您周边的相关数据</string>
// 蓝牙
<key>NSBluetoothPeripheralUsageDescription</key>
<string>是否允许App访问您的蓝牙</string>
// 日历
<key>NSCalendarsUsageDescription</key>
<string>是否允许App访问您的日历</string>
// 提醒事项
<key>NSRemindersUsageDescription</key>
<string>是否允许App访问您的提醒事项</string>
// 麦克风
<key>NSMicrophoneUsageDescription</key>
<string>是否允许App访问您的麦克风</string>
// 媒体资料库
<key>NSAppleMusicUsageDescription</key>
<string>是否允许App访问您的媒体资料库</string>
// 运动与健康
<key>NSMotionUsageDescription</key>
<string>是否允许App访问您的运动与健身</string>
// 健康更新
<key>NSHealthUpdateUsageDescription</key>
<string>是否允许App访问您的健康更新 </string>
// 健康分享
<key>NSHealthShareUsageDescription</key>
<string>是否允许App访问您的健康分享</string>
在最新版本的iOS10系统中,如果你的项目中访问了隐私数据,比如:相机、相册、录音、定位、联系人等等,在Xcode8中打开编译的话,统统会crash,控制台会输出下面这样的日志:这是因为iOS对用户的安全和隐私的增强,在申请很多私有权限的时候都需要添加描述,但是,在使用Xcode 8之前的Xcode还是使用系统的权限通知框。要想解决这个问题,只需要在info.plist
2016年9月7日,苹果发布
iOS
10
。2016年9月14日,全新的操作系统
iOS
10
将正式上线。
作为开发者,如何
适配
iOS
10
呢?
1.Notificat
ion
(通知)
自从Notificat
ion
被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在
iOS
10
开始真正的进行大改重构,这让开发者也体会到UserNotificat
ion
s的易用,功能也变得非常强大。
•
iOS
9 以前的通知
1.在调用方法时,有些方法让人很难区分,容易写错方法,这让开发者有时候很苦恼。
2.应用在运行时和非运行时捕获通知的路径还不一致。
3.应用在前台时,是无法直接显示远程通知,还需要
iOS
10
后 提交审核经常会因为没有在info.plist文件里边加入访问
隐私
的提醒而被回退,这样子又浪费了时间,所以先对照一下APP
中
是否用到这些
隐私
的
权限
NSPhotoLibraryU
sage
Des
cript
ion
NSCameraU
sage
Des
cript
ion
//定位:
Privacy - Locat
ion
When In Use U
sage
Des
cript
ion
APP需要您的同意,才能在使用时获取位置信息,以便于搜索附近的xxx位置
Privacy - Locat
ion
Always and When In Use U
sage
Des
cript
ion
App需要您的同意,才能访问位置信息,以便于搜索附近的xxx位置
Privacy - Locat
ion
Always Us.
NSAppleMusicU
sage
Des
cript
ion
App需要您的同意,才能访问媒体资料库
NSBluetoothPeripheralU
sage
Des
cript
ion
App需要您的同意,才能访问蓝牙
NSCalendarsU
sage
Des
cript
ion
App需要您的同意,才能访问日历
NSCameraU
sage
Des
cript
ion
App需要您的同意,才...
本文将为大家说明
iOS
10
适配
问题
的相关介绍,具体实例请看下文
前段时间升级了Xcode8,整体来说对OC的影响不大,但是还是跳一个坑,消耗了不少时间。这里总结下遇到的
适配
问题
。
1、
权限
问题
Xcode8 访问相机、相册等需要
权限
的地方崩溃
解决办法:
在使用私有
权限
时,添加Info.plist文件
中
添加配置:
下面是各种key,需要哪个
从6月份开始
iOS
10
就受到广大开发者的关注,作为一个新的
iOS
版本,对于开发的要求改动算
是近几年来很大的,近期很多公司都是在加班加点的
适配
iOS
10
,因为闪退、崩溃、功能不能
使用等莫名的bug一直出现,个人总结了以下
问题
,持续更新希望能帮到大家!
1.编译器Xcode8新建项目的工程配置
注意:在Xcode8工程配置的general选项卡
中
,使用更详细signing选项替换了
图片并保存到本地的功能,一点发现闪退了。发现 Xcode 报以下错误:
The app's Info.plist must contain an NSPhotoLibraryAddU
sage
Des
cript
ion
key with a string value explaining to the user how the app uses this data.
Info.pli...
相册(读)NSPhotoLibraryU
sage
Des
cript
ion
"XXX"需要您的同意,才能访问相册
相册(写)NSPhotoLibraryAddU
sage
Des
cript
ion
"XXX"需要您的同意,才能添加照片
相机NSCameraU
sage
Des
cript
ion
"XXX"需要您的同意,才能访问相机
麦克风NSMicrophoneU
sage
Des
cript
ion
"XXX"需要您的同意,才能访问麦克风
位置NSLocat
ion
Usag.
uni-app是一种跨平台开发框架,可以将同一份代码编译成微信小程序、支付宝小程序、H5页面和App等多个平台上运行。在uni-app
中
,
iOS
安全
区域
适配
是指在iPhone X及以上设备上,由于屏幕顶部和底部的
安全
区域(刘海区域和Home条区域),需要对界面进行相应的
适配
,以保证内容的显示不被遮挡。
在
iOS
上,uni-app提供了两种方式来进行
安全
区域
适配
:safe-area和safe-area-inset。
safe-area是一种简单快捷的布局方式,在组件的外层使用类似flex布局
中
的justify-content和align-items属性来对组件进行居
中
适配
,它能够根据不同设备的
安全
区域自动调整,简单易用。
而safe-area-inset则是一种更为灵活的
适配
方式,它提供了一系列的CSS变量,可以精确控制组件的位置和尺寸,更加细致地
适配
不同的
安全
区域。可以通过设置top、right、bottom和left等变量来调整组件的边距,以确保不被
安全
区域遮挡。
在uni-app的页面配置文件(例如manifest.json)
中
,可以使用“safe-area”: true来开启
安全
区域
适配
,这样在编译成
iOS
小程序时,uni-app会根据设备的
安全
区域自动对页面进行
适配
。
总之,uni-app提供了方便灵活的
iOS
安全
区域
适配
方式,可以帮助开发者在编写项目时轻松处理
iOS
设备的
安全
区域,提升用户体验。