admin管理员组

文章数量:1550527

最近一段时间,很多项目都是因为使用到了HealthKit这个框架审核被拒,被拒邮件大概有以下两种,第一种是这样的:

 

发件人 Apple
Guideline 4.2.1 - Design - Minimum Functionality We still noticed that your app uses HealthKit, but your app does not appear to include any primary features that require health or fitness data. 
The intended use of HealthKit is to share health or fitness data with other apps or devices, and it should be used only in apps that require this data as a part of the app's core functionality. 
Next Steps
To resolve this issue, please remove any HealthKit functionality from your app, as well as any references to this app’s interactivity with HealthKit from the app or its metadata.

 

还有一种是这样的(此邮件由网友koalaisjys提供):

4. 2 Design: Minimum Functionality
Thank you for your resubmission. We found that your app is still not in compliance with the App Store Review Guidelines.
Guideline 4.2.1 - Design - Minimum Functionality
Your app uses the HealthKit or CareKit APIs but does not indicate integration with the Health app in your app description and clearly identify the HealthKit and CareKit functionality in your app's user interface.


Next Steps

To resolve this issue, please revise your app description to specify that your app integrates with the Health app.

 

综合分析:

第一种被拒的原因最可能的原因是因为你项目中申请了某些权限,而根据这些权限获取到的数据没有用到,或者说你获取到的数据你用到了,但是用户不知道你用到了(这句话听起来有点绕嘴,我再解释一下,根据苹果的审核规则,你获取到了用户的一些隐私数据,你就必须要告诉用户你用这些数据做了什么,要在APP中体现出来,你不能只是获取用户的数据,而不告诉用户你是怎么用了,比如说支付宝用了运动数据,但是支付宝用这些运动数据做了好友排行榜、做了公益捐步!微信和QQ也是一样,总之就是一定要用到这些数据,并且要让用户知晓!);第二种就相对简单了,就是因为你再APP描述没有涉及这一块,或者是你的隐私政策没有加上,这些在下文中会详细讲述的;

经过多方查找资料得知苹果对HealthKit要求如下:

27: HealthKit
27.1 使用HealthKit框架的应用程序必须遵守其所在区域的适用法律,以及iOS Developer Program License Agreement中的3.3.28和3.39条款。

27.2 将虚假或者错误的数据写入HealthKit的应用程序将会被拒绝。

27.3 使用HealthKit框架iCloud中储存用户健康信息的应用程序将会被拒绝。
27.4 应用程序不允许将通过HealthKit API收集的用户数据用作广告宣传或者基于使用的数据挖掘目的,除了改善健康、医疗、健康管理以及医学研究目的。

27.5 未经用户许可与第三方分享通过HealthKit API获得的用户数据的应用程序将会被拒绝。

27.6 使用HealthKit框架的应用程序必须在营销文本中说明集成了Health app,同时必须在app用户界面清楚阐释HealthKit功能。

27.7 使用HealthKit框架的应用程序必须提供隐私政策,否则将会被拒绝。

27.8 提供诊断、治疗建议或者控制硬件以诊断或者治疗疾病的应用,若没有根据要求提供书面的监管审批,将会被拒绝。

重点请看26.6、26.7、26.8这三条,如果使用HealthKit这一框架,首先必须在营销文本中加以说明,并且在APP用户页面还要清楚地阐释HealthKit功能;其次是APP必须提供隐私政策;大家务必详细琢磨这几点要求;

此外,给出个人建议:

 

  • 尽可能的不用HealthKit、HomeKit,因为苹果对这些框架管控很严,尤其是iOS 11推出之后。当然,如果项目有这个需求那就没办法了;
  • 尽可能少的去请求权限,比如说:项目中只需要获取健康中的步数和距离,那么你就不要申请获取心率等其他权限,更没必要去获取写入健康数据的任何权限;(这点很重要,我们在开发中搜索获取健康数据时候,在博客中查找到的代码,大多都会请求获取以及写入很多的权限,但是这些仅限于调试,在发布时候尽可能简化其中的功能,这些对APP的审核会有很大的影响);
  • 要发布审核时候,严格按照苹果的要求来填写资料,比如要在营销文本中添加的说明,以及在APP中提供一些必要的隐私协议,以便用户能清楚的了解APP获取这些数据的用途;
  • 最基本的常识,要在Target->Capability中打开Health开关,并在证书配置页面的套装ID中激活HealthKit功能;
  • 根据经验得知开发者账号的类型也会对审核产生一定的影响,企业级的开发者账号相对来说不会很严格、公司级别的普通开发者账号一般、以个人名义申请的开发者账号相对较为严格;
  • 另外,APP的类别,也会对审核造成一定影响,比如APP的类别是“工具”,那么这就跟健康数据相差较远,审核也就会相对严格,如果你的APP类别为“医疗”,那么审核就会相对宽松一些;

附上苹果审核标准:https://developer.apple/app-store/review/guidelines

 

本人工具类APP包含获取健康数据的API今(2017年10月20日)已通过审核,总结如下:

1.尽可能少的申请读写权限,如果只需要“读”就不要申请“写”的权限


HKQuantityType *stepCountType = [HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierStepCount];
HKQuantityType *distance = [HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierDistanceWalkingRunning];
[self.healthStore requestAuthorizationToShareTypes:nil readTypes:readDataTypes completion:^(BOOL success, NSError *error) {

                if (compltion) {
                    compltion (success, error);
                }
            }];
 

 

 

2.隐私政策,这一点很重要,所谓的隐私政策在其中占有很大的比重,苹果指出 : 所有面向儿童的 App,或者提供自动续期或免费订阅的 App,都必须提供隐私政策。此外,如果 App 包含帐户注册或需要访问用户的现有帐户,或由法律另行规定,也必须提供隐私政策。对于收集用户或设备相关数据的 App,也建议提供隐私政策。

至于隐私政策,可以copy一些大公司的,然后改成自己公司的标识,然后根据具体的需求稍事修改即可,这里提供一个隐私政策模板(由于是超链接,如果链接已失效请联系博主提供有效的链接)

 

3.宣传文本,可以是一句话,但最好还是要有!关于宣传文本苹果是这样介绍的:

 

<span style="color:#333333">
Promotional Text
Your app’s promotional text appears at the top of the description and is limited to 170 characters. You can 
update it at any time without having to submit a new version of your app. Consider using promotional text to share the latest
news about your app, which can include new promotions for your app or in-app purchases, upcoming features or content, 
limited- time sales, or other events within your app.</span>

宣传文本可通知 App Store 访客当前最新的 App 功能,您无需提交更新请求。如果客户的设备运行 iOS 11 或更高版本,在 App Store 中,宣传文本会显示在您的 App 名称下方。

 

 

 

就先这么多吧,有疑问请在评论区留言,最后,祝大家好运(如需紧急联系可发送邮件至:haojieopenmail@gmail

 

本文标签: 被拒建议项目HealthKit