1

IOS严格的审核制度,源于“将用户体验做到极致”
作为一个开发者,我觉得一次次地被拒绝,很痛苦,但同时是在学习苹果这种“将用户体验做到极致”的精神!

总结之前,正好看到一篇关于苹果这种“完美主义”的文章,摘取部分引用过来,辩证的看待问题,让我们痛并快乐着解决审核问题!

  众所周知乔布斯是一个完美主义者,而凡是完美主义者必定会有强迫症,而这个症状就是:“所以的事情必须在我的掌控之下,其他人只会搞砸!”

---制作工艺
  给苹果做生产线那简直就像招标一样,考量因素,1是价格,2是质量。在深圳富士康的朋友负责iPhone外壳组装,她和我说Apple为了拥有足够的人工钻石(用于做钻石刀,打磨iPhone的外壳)几乎把世界上所有人工钻石买空了!然后按时按量分配给各个工厂。

---App Store/iTunes
  不要使用第三方接口!第三方接口一定会crash(崩溃)!乔布斯大叫道! 事实证明,他是对的~这点我想没有人敢反驳吧。至于App,所有的应用必须经过我的审核!你们想要来到我打造的“完美”世界(iOS)中,你们必须“被我完美过”才行!

从UI上讲,永远要给用户容易懂得东西,这叫做降低学习成本。十六宫格够简洁了吧~然后在此基础上来点华丽,他们就心花怒放啦!

---用户是世界上最愚蠢的上帝,他会犯一切不可能犯的错误!比如输入2003年2月29号啊,所以为啥输入日期永远是下拉表或者直接一个日历给你点,不让用户犯错比任何提示都强!(系统说:“得得得你太白痴了,哥扶着你走中不?”)如果实在防止不了,那么就给予用户最华丽的提示嘎嘎,解决了!

  大家肯定想问,我怎么白痴了我?OK~有木有谁不小心填错验证码?有木有谁不小心忘填信息?以前第一次做注册和登陆页面的时候,80%的时间在想用户会犯哪些错。。。我知道不是你白痴,可是人总会犯错,但我们可以把经过千锤百炼的逻辑给到应用,让他们帮助你不犯错。

---越封闭,越稳定,越安全!
  有人说iOS稳定(流畅)和安全,废话!这么封闭的系统,还不稳定和安全就别混了!当然iOS比安卓流畅还有一个原因,用户手势响应级别在iOS中是最高的。细细想来,我勒个去啊,乔布斯连用户都不放心,开放式系统绝对将成为iPhone完美主义的败笔!(其实没错,看看windows和Mac OS X就知道了)

综上几点,这就是苹果能够这么完美的原因,但这非常违背世界潮流,世界潮流的趋势是分工!正如微软提供系统和软件,诺基亚提供硬件,加工,销售等。。。但这就不完美了

5. 1.1法律:隐私 - 数据收集和存储
准则5.1.1 - 法律 - 隐私 - 数据收集和存储

我们注意到您的应用请求用户同意访问其相机,但未在权限模式警报中说明使用此功能。

详情请参阅附件截图。

下一步

要解决此问题,请修改权限模式警报以指定应用程序请求访问用户相机的原因。

资源

要详细了解请求用户访问应用功能的权限,请访问iOS人机界面指南。 您可通过扣:2205357007帮你各类ios上架问题和解决“隐私敏感数据应用拒绝”页面,以了解如何为权限请求警报提供使用说明。

大概意思就是得在plist里面必须加上NSPhotoLibraryUsageDescription和NSCameraUsageDescription等字段的键值对才行,之前都是默认的,现在必须加,要不不让通过!

mui关于描述的问题,在manifest.json文件中,plus->distribute->apple下,新增plistcmds节点。

"plistcmds":[

"Set :NSCameraUsageDescription 拍照/摄像/扫描二维码",
"Set :NSMicrophoneUsageDescription 录制音频文件/语音识别",
"Set :NSPhotoLibraryUsageDescription 选择/保存图片",
"Set :NSLocationWhenInUseUsageDescription 获取位置信息"

]大概统计了一下需要加的一些字段列在下面:

•NSContactsUsageDescription -> 通讯录

•NSMicrophoneUsageDescription -> 麦克风

•NSPhotoLibraryUsageDescription -> 相册

•NSCameraUsageDescription -> 相机

•NSLocationAlwaysUsageDescription -> 地理位置

•NSLocationWhenInUseUsageDescription -> 地理位置

•Privacy - Bluetooth Peripheral Usage Description -> 蓝牙权限

•Privacy - Speech Recognition Usage Description -> 语音转文字权限

•Privacy - Calendars Usage Description -> 日历权限

•Privacy - Contacts Usage Description -> 通讯录权限

准则4.2.3 - 设计 - 最小功能

我们需要安装QQ应用程序才能通过QQ登录。 用户应该能够使用QQ登录并访问他们的账户,而无需安装任何额外的应用程序。

下一步

如果您想通过QQ提供身份验证,请使用允许用户在您的应用程序中使用QQ登录的机制,而无需先安装其他应用程序。

我们建议实施Safari View Controller API以在您的应用中显示网页内容。 Safari View Controller允许在应用中显示URL并检查来自嵌入式浏览器的证书,以便客户可以验证网页URL和SSL证书,以确认他们将自己的登录凭据输入合法页面。

资源

有关Safari View Controller API的其他信息,请查看Safari网页的新增功能。

微信、微博等第三方登录也是上面一样的被拒理由!

1、第一次审核被拒绝,因为当手机未安装相关应用的时候会提示安装,苹果是不允许这种操作的。

2、第二次审核改为如果用户手机中未安装qq、微信则不显示相应的登录图标,但是我已经在网上看到有人说被拒绝了,很慌

3、最佳实践应该是安装第三方直接跳转授权,未安装则web授权,同时也要有自己的登陆注册系统,但是貌似微信暂时不能web授权,正在探索。。。。

解决方法:检测手机是否安装微信,未安装则隐藏快捷登录,亲测依然有效;微信分享检测是否安装,未安装提示是否跳转appstore进行安装(2018年5月23日,注:我是在可销售的app中更新的)

准则2.3.3 - 性能 - 准确的元数据


我们仍然注意到,您的屏幕截图不足以反映您的应用程序在使用中。

具体来说,5.8英寸的显示设备屏幕截图不反映iPhone X设备上使用的这个应用程序。

详情请参阅附件截图。

下一步

要解决此问题,请修改您的屏幕截图,以确保它们准确反映在支持的设备上使用的应用程序。对于iPhone,您需要一组5.5英寸的屏幕截图,而对于iPad,您需要一组12.9英寸的屏幕。在每个地区的App Store上查看时,此套件将适当缩放至其他设备尺寸。

资源

有关为App Store创建精彩截图的资源,您可能需要查看Apple开发人员门户上提供的App Store产品页面信息。

请确保您使用媒体管理器进行了任何屏幕截图修改。您应该确认您的应用在所有语言和所有支持的设备上外观和行为相同。了解如何使用媒体管理器为每种显示大小和本地化添加自定义屏幕截图。

由于您的iTunes Connect状态为“拒绝”,因此需要新的二进制文件。上传新的二进制文件时进行所需的元数据更改。

注意:请确保通过选择每个特定本地化并进行适当更改,对所有应用程序本地化进行元数据更改。

一般我们app都是在iphone和ipad上使用,所以提交app审核时,必须提供5.5英寸和12.9英寸的屏幕快照(如果打包时不打算兼容ipad可以不选,12.9英寸也就不是必选项了)

而5.8英寸是iphone X的尺寸(我全公司也没找出一台,贫穷限制了我的想象。。),因为ios快照必须有苹果状态栏,所以不方便用浏览器和模拟器模拟,本人还是偷了把懒,直接拿5.5英寸的截图PS成了其他尺寸,注意失真也可能被拒绝,不过失真问题PS技术高点还是可以克服的,而iphone X的屏幕是不同于别的型号的(居然把这茬给忘了),因此这里着实叫弄巧成拙,因为最后的最后发现5.8英寸不是一定要的。。。。。。。。。。。

准则5.1.2 - 法律 - 隐私 - 数据使用和共享


我们注意到,您的应用在将用户的分数上传到全球排行榜之前未获得用户的同意。

请参阅附件截图了解更多信息。

要使用您的应用收集个人数据,您必须向用户明确其个人数据将上传到您的服务器。

下一步

要解决此问题,请修改您的应用,将隐私政策URL包含在iTunes Connect的应用信息页面中,并确保您提供的URL将用户引导至您的隐私政策。

这个问题苹果也基本给出了方案:

  1、就是在应用中产生和个人有关的数据在上传服务器的时候,让用户确认是否允许上传;

  2、一般在注册页面,都会放用户协议,可以把应用政策写在里面,解释清楚(比如会员制度、积分制度,比如积分是怎么获取的,用来干什么,有什么影响)然后把隐私政策URL包含在iTunes Connect的应用信息页面中,并确保您提供的URL将用户引导至您的隐私政策。

  最好两者一起完善吧,ios的审核说难听点,审核过了的app,换个人审核都有极大可能被拒绝。


ios开发子
9 声望2 粉丝