iOS12 使用HealthKit, HKHealthStore崩溃闪退问题

1.最近运行老程序,有段代码获取苹果健康数据,莫名其妙的闪退了,看crash原因是*** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘NSHealthShareUsageDescription must be set in the app’s Info.plist in order to request read authorization for the following types: HKQuantityTypeIdentifierStepCount’

看原因是权限字段未在info.plist中配置,忙去翻plist文件看,记得原来一直配置的好好的字段都在
Privacy - Health Share Usage Description
Privacy - Health Update Usage Description
懵逼中…

2.寻找解决办法

试试问题万能解决大法—重启Xcode,依然无果
那用排除法,老代码新问题,先去甩锅给系统,看系统更新设置啥的问题…
想起最近更新了ios12和Xcode10,找了个ios11的机器跑了代码试了下,果然没问题.
一边自己试验各种办法,一边baidu,google找方法,结果大多都是老的帖子讲添加权限字段在info里就好.
最后,翻到jinrui_w简书帖子将info.plist中权限描述,改为英语才好使屏幕快照 2018-10-26 下午7.22.21.png
注意:貌似随便写英语也不好使,我试过要包含visit read "health"才好使
目前按此方法已解决,如有更好的办法,请指正
参考 :https://www.jianshu.com/p/0bd210adcf40

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值