iOS 10 因苹果健康导致闪退 crash

如果在app中调用了苹果健康,iOS10中会出现闪退。
控制台报出的原因是:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSHealthUpdateUsageDescription must be set in the app's Info.plist in order to request write authorization.'

这是因为我们要在info.plist文件中声明苹果健康的使用权限,所以在info.plist中添加以下key就可以了。

请求写入

  <key>NSHealthUpdateUsageDescription</key>
<string>some string value stating the reason</string>

请求读取

   <key>NSHealthShareUsageDescription</key>
    <string>some string value stating the reason</string>

Paste_Image.png

相关问题

另外iOS 10 其他权限相对应的key 如下:

相机权限描述:
    <key>NSCameraUsageDescription</key>
    <string>cameraDesciption</string>
通信录:
    <key>NSContactsUsageDescription</key> 
   <string>contactsDesciption</string>
麦克风:
<key>NSMicrophoneUsageDescription</key>  
  <string>microphoneDesciption</string>
相机:
 <key>NSPhotoLibraryUsageDescription</key>
    <string>photoLibraryDesciption</string>



文/陈怀哲(简书作者)
原文链接:http://www.jianshu.com/p/545bd1bf5a23
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
原文地址:https://www.cnblogs.com/Hakim/p/5908580.html