问题描述:
最近做的一个项目,需要获取手机“健康”中的步数。但是手机升级到最新的iOS12.0或12.0.1系统后,使用HKHealthStore获取授权时,程序闪退,并提示*** 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文件中添加NSHealthShareUsageDescription,即获取“健康”中读取权限的描述信息,但是项目中的info.plist文件中已经添加了此描述信息。如下图:
这个问题真的很无奈,网上搜了很多资料,也没有找到相关的,于是各种尝试不同方式,终于找到了解决办法。
解决办法:
将描述信息改成英文。如下图: