我的背景HKObserverQuery在我的应用程序中工作得很好,但我意识到如果用户在设置查询后禁用了HealthKit权限,他们会继续在后台启动应用程序,即使他们由于权限更改而没有返回任何结果。如果用户不希望我跟踪他们的活动,我不想继续启动我的应用 - 有没有办法解决这个问题?
答案 0 :(得分:0)
您可以使用disableBackgroundDeliveryForType:withCompletion:
停用特定类型的后台投放,或使用disableAllBackgroundDeliveryWithCompletion:
的{{1}}方法停用所有背景投放。
你可以在你的观察者查询的完成处理程序中执行它,如果你发现没有结果,你认为这是由于用户已经更改权限,即使从HealthKit读取项目我不认为您可以判断用户是否拒绝阅读权限或者没有任何项目(这是由于隐私问题,知道用户拒绝了血压样本的阅读权限可能会让用户对她的血压有一些医疗问题)。