1、 Performance - App Completeness(性能-app完整性)
● 不允许出现微信、QQ、一键登录等登录界面有按钮的功能都需要能够正常操作,如果不能操作的就必须隐藏掉,不能提示暂无开发等,不然审核通不过;
● 微信/QQ等第三方软件进行登录,需要对不安装第三方软件的情况下进行登录,否则也不允许通过;同时也有另一个简单的处理方案,就是首先检测当前设备是否存在这个第三方软件,如果不存在,那么不提供相关的第三方功能登录;
2、 Legal - Privacy - Data Collection and Storage(法律-隐私-数据手机和存储)
● 需要调用用户手机相册、相机、定位等都需要在用户确认的弹框上面描述清楚为什么调用,否则不允许通过。
最新的uni-app是在manifest.json中的APP权限配置里面进行说明配置,如下图:
● 需要额外的登录步骤的时候需要回复苹果审核团队做说明,否则苹果审核会以方便用户专注您应用的内容和功能拒绝你。
比方说:我们系统是用的手机号进行绑定确认用户信息的,苹果首次登录(只能获取邮箱)是获取不到手机号的,需要进行手机号绑定之后才能进入系统。因为必须使用手机号,所以必须回复审核说明具体情况(这个是系统需要)即可。
3、 Design - Sign in with Apple(设计-使用苹果登录)
● 首先,如果开发者提供任何其它第三方登录(比如:QQ、微信等),就必须同时提供苹果登录,否则不允许通过;
● 其次,苹果登录必须使用原生端默认的按钮样式,否则会引起不允许通过,尤其以下几点:
● 最后,苹果登录只能获取到相应的token和email等信息,苹果登录调用uni.login之前必须做登出操作,uni.login不会校验identityToken是否过期(具体的操作表现就是,第一次使用苹果登录的时候会有弹框,退出账号再次进行苹果登录的时候不会出现弹框,主要就是这个原因),这个会导致苹果登录授权失败。解决方案就是每次的登录之前对苹果登录先进行登出操作,清除授权原先的信息之后,重新进行弹框确认登录App
4、 Legal - Privacy - Data Use and Sharing(法律-隐私-数据使用和共享)
APP上架的时候的APP隐私的时候直接填写未收集数据就可以,也就是不跟踪用户的定位等数据(只有需要接广告或者与第三方分享数据的时候才有需要)