App Store审核成功解决2.1大礼包被拒后,通过最后一关的元数据被拒分享(本文原来已经有发布在我其他博客了,但由于某些问题删除了。所以重新更新并分享给大家)
最近这周帮一个客户上线一个棋牌游戏的项目,已经被3.2.1过后处理成功,又出现了2.1大礼包App完成度的问题;经过连续2天的加班通宵(当然是团队伙伴们车轮战拉),成功解决“2.1大礼包”问题后,这周日发现审核居然没通过!反馈的问题是“元数据被拒绝”,这个问题真是第一次碰到所以在这总结分享解决其他被拒问题后变成元数据被拒后如何处理,做个笔记同时也希望可以帮助被这个问题困扰的开发者们。
1、元数据 “元数据与应用内容不符 (贴近自己的软件编写上架内容)* 元数据包含不雅词汇:如装X (修改即可) * 元数据内容不合理,如推广第三方平台或内容不适 (贴近自己的软件编写上架内容)* 上架图片,例如最新的iPhone X的上架图,如果出现不是iPhoneX的样式,虽然你的图片尺寸是对的,但是会以无法反映出在iPhone X上的样式而被拒绝。(修改上架图即可)” 2、二进制文件被拒绝 软件闪退(频率较低) (自行解决)* 应用程序不支持ipv6(频率最高) (上架前自己使用ipv6环境测试一下)* 第三方登录(按钮点击无法反应)(***上架时直接隐藏或按钮变为不可点击状态****判断是否安装,未安装隐藏)* 第三方支付(苹果规定如果是虚拟货币必须使用内购)(***上架时为苹果,上架成功时为第三方支付)*** 上架图片,例如最新的iPhone X的上架图,如果出现不是iPhoneX的样式,虽然你的图片尺寸是对的,但是会以无法反映出在iPhone X上的样式而被拒绝。(修改上架图即可)* 系统权限的提示(审核人员不知道你要这个权限干什么,描述不清晰)(修改描述具体点是干什么用的或去掉不需要的权限即可)!!!! 最近这个被拒的比较多 * 审核人员无法操作你的软件 (需要硬件配合)(提交上架时,把操作视频链接放在备注中) 碰运气的方法:金融借贷类APP (需要资质)(上传苹果需要的资质即可,或改变app的性质)棋牌的相对就好说了,版号那些比金融许可证好处理
注意:元素数据被拒绝不需要你修改二进制数据(就是不需要你修改项目),只需要修改你提交APP时的描述信息就OK。 注意提供用户名和密码的准确性。 注意仔细检查产品给你提供上传浏览图片的内容。
一、关于元数据被拒绝,大家注意看下哪一个条件没有符合(元数据名称、描述、评级、排名等)
苹果2018年06月16日回复邮件
发件人 Apple
2. 1 性能:应用程序完整性
2. 3 性能:准确的元数据
指南2.1 -所需的信息 我们无法登录来检查你的应用与你提供的演示帐号信息。
为了回顾你的应用程序,请为我们提供一个功能演示账户以便我们能充分评估你的应用程序的功能 下一个步骤 帮助我们进行应用程序的审查,请提供一个用户名和密码的应用审核信息部分在iTunes应用程序连接。请确保内容包含在您的应用程序,展示了应用程序中可用的特性和功能。
提供演示账户信息: ——登陆iTunes Connect ——点击“我的应用” ——选择你的应用 ——点击屏幕左侧的应用程序版本向下滚动到“应用程序审查信息” ——选择“登录”框 ——输入演示的凭证在“用户名”和“密码”字段 ——一旦你完成了所有更改,点击“保存”按钮顶部的版本信息页面。
如果您的iTunes连接状态显示为元数据拒绝,我们不需要一个新的二进制来纠正这个问题。请回复此消息解决中心确认有效的演示账户的可用性,我们将继续审查。
指引2.3.10——性能 我们注意到你的应用程序或其元数据包括无关的第三方平台信息。具体来说,项目状态栏中提到的截图。引用第三方平台应用程序或其元数据在应用程序商店是不允许的,除非有特定的互动功能。
详情请见附件截图。
下一个步骤 为了解决这个问题,请把这些信息从你的应用程序的所有实例及其元数据,包括应用描述,有什么新信息,预览、截图。因为您的iTunes连接状态是元数据拒绝,我们不需要一个新的二进制文件。
修改元数据,访问iTunes连接选择您的应用程序和修改所需的元数据值。一旦你完成了所有更改,在解决中心回复这个信息,我们将继续审查。
注意:请确保任何元数据更改所有应用程序本地化通过选择每个特定的本地化和做适当的改变。
注意:元素数据被拒绝不需要你修改二进制数据(就是不需要你修改项目),只需要修改你提交APP时的描述信息就OK。
注意提供用户名和密码的准确性。
注意仔细检查产品给你提供上传浏览图片的内容。
解决问题:
比如项目代码[target isKindOfClass:NSClassFromString(@"CAMViewfinderView")]
,其中的CAMViewfinderView
就是系统非公开的api,Apple审核的时候检查到了这个字符就会直接把你的项目打回来并告诉你“二进制文件被拒绝”,但是我的项目里不写这个方法就会出现各种bug,怎么办?
其实只要不让项目里直接出现“CAMViewfinderView”这个字符串就不会被Apple检测到了,既不用动太多代码影响功能,也能通过审核的两种方法:
1. 动态拼接字符串
比如把“CAMViewfinderView”拆分成好几个字符串,这样调用这个方法[target isKindOfClass:NSClassFromString(str1,str2,str3,str4)]
(str1,str2,str3,str4拼起来就是CAMViewfinderView)
2. 加密处理系统非公开api
统一加密工具,在程序外先加密好你调用的api字符串
“CAMViewfinderView”
加密成"Q0FNVmlld2ZpbmRlclZpZXdDb250cm9sbGVy"
"Q0FNVmlld2ZpbmRlclZpZXdDb250cm9sbGVy"
为decodeStr
,[target isKindOfClass:NSClassFromString(decodeStr)]
加密的方法是亲测成功通过审核的所以总结分享下。 整个方法都没直接出现系统的非公开api,但实现的方法是没有任何变化,再提交就能审核通过 注意:还是尽量不要调用系统非公开api;如果你使用上述方法避开审核一定要写好修改注释或者文档,否则后面时间一久维护起来就相当麻烦了。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。