iOS通用应用与HealthKit在iPad上无法运行

30
我有一个通用应用程序,已经实现了使用HealthKit API。 它在iPhone上运行得很好,但当我尝试在实际的iPad设备上安装它时(在iPad模拟器中完美运行),它无法安装。
我收到错误消息:“...应用程序的Info.plist指定了设备功能要求,这些要求未满足 '我的iPad'”。是否有任何方法可以分发仅在iPhone上运行的HealthKit API(框架)的通用应用程序?
这里是我的项目的两个截图: 这在“自定义iOS目标属性”下 这是我的能力选项卡 我真的需要制作一个独立的iPad应用程序吗?
4个回答

47

我已经尝试过这个方法,但如果我这样做的话,HealthKit 就无法在 iPhone 上工作。在“将 HealthKit 密钥添加到您的 plist 文件”下的功能列表中,它会给我一个错误。或者是我做错了什么? - Philip
HealthKit 只能在 iOS 8 及以上版本中使用。我已经在模拟器上进行了测试,即使我从 plist 中删除了 HealthKit,它仍然可以正常工作。 - user2423351
6
好的,我也是这样做的。此外,如果您打算在iOS 7或更早版本上运行您的应用程序,请不要忘记添加运行时检查以检查HealthKit API是否存在,并为HealthKit SDK链接设置可选标志。 - edward
即使在功能列表中出现“将“HealthKit”键添加到您的info plist文件”旁边的红色错误,苹果仍然会批准该应用程序吗?我的应用程序支持healthkit,但不强制要求设备上安装healthkit。我通过编程方式检查healthkit的可用性。但是红色错误让我感到担忧。 - Loc Pham
是的,您仍然可以从健康应用程序中读取数据,而且苹果已经批准了我的应用程序。 - user2423351
显示剩余4条评论

3
只是从info.plist中的必需设备功能中删除healthkit是不起作用的。
如果只执行以上步骤,那么苹果将拒绝该应用,并显示以下消息。 您的应用程序使用HealthKit API,但在应用程序说明中没有指示与Health应用程序的集成。 您需要执行以下步骤才能在iPhone和iPad上运行您的应用程序。 1.info.plist中的必需设备功能中删除healthkit enter image description here 2. 您需要将HealthKit.framework链接的框架和库设置为Optional enter image description here

0

似乎在iPad上无法使用HealthKit:

来自HealthKit框架参考文献:

在iPad上,HealthKit和Health应用程序都不可用。 HealthKit框架不能在应用程序扩展中使用。


0

来自苹果文档: https://developer.apple.com/reference/healthkit

HealthKit和健康应用程序不适用于iPad

当您在iOS应用程序上启用HealthKit功能时,Xcode会将HealthKit添加到所需设备功能列表中。这可以防止用户在不支持HealthKit的设备上购买或安装该应用程序

这两个陈述一起意味着,如果您向您的应用程序添加了HealthKit功能,则用户将无法在iPad上安装您的应用程序。

它也可以在设备兼容性矩阵中找到: https://developer.apple.com/library/content/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接