为 Apple 应用提交测试提供后门
Posted
技术标签:
【中文标题】为 Apple 应用提交测试提供后门【英文标题】:Providing back doors for Apple app submission testing 【发布时间】:2010-09-12 03:53:02 【问题描述】:我正准备向 Apple 提交一款教育应用以供审核。该应用程序有点像一系列闪存卡,使用整个应用程序需要数千次“翻转”。
为了缩短审核流程并在一些差劲的测试人员想要查看应用程序的最终状态时保持理智,我正在考虑添加一些方法来欺骗应用程序,让他们认为用户已经完成。我的第一个想法是在 standardUserDefaults 中添加一个布尔值检查来执行此操作,并在应用提交页面的“向我们提供登录信息”字段中给出设置的名称。
所以我的问题是,有谁知道应用审阅者是否能够直接编辑 NSUserDefaults 值?
另外,有没有人有任何其他好的想法来实现这一点? (如果可能的话,我宁愿避免“秘密按键”类型的解决方案......)
【问题讨论】:
为什么需要后门?你知道没关系。让 Apple 翻页。 @thyrgle 我不知道,一个快乐的评论者是一个不太可能拒绝应用程序的评论者 【参考方案1】:作为提交过程的一部分,Apple 会询问您的应用是否有任何“演示”或“测试”帐户。它们仅用于此目的。因此,您可能需要考虑包含“密码”并将其记录在本节中。我知道你说过你不想走那条路,但我非常怀疑测试人员会在标准流程之外做任何事情(例如编辑 NSUserDefaults)
【讨论】:
嗨,马特。我不想添加秘密按键的主要原因是用户意外触发。我的第一个想法实际上是选择一些不起眼的标签并在例如 5 秒长的触摸事件之后设置调试模式,但我有点偏执于用户在看起来他们已经失去所有进度之后吓坏了...呃...拿着手机的方式不对...=)既然您提到了,我想我可以让触摸事件提示用户输入密码以启用调试模式,但是... 此外,如果您的应用程序包含“复活节彩蛋”,您需要(在 iTC 手册或协议之一中;我忘记了)告诉 Apple。据推测,这主要是为了防止 4+ 级应用程序中出现有伤风化的复活节彩蛋之类的东西。 @tc - 由于这是向审阅者披露的,因此它不被视为隐藏功能。事实上,他们只是在这种情况下鼓励这样做。【参考方案2】:让您提供给 Apple 以供审核的测试帐户(受密码保护)请求您的服务器获得解锁所有数据的权限。应用审核通过后,您可以在您的服务器上禁用该测试账号;和/或在某个日期之后,您预计该应用会出现在应用商店中。
【讨论】:
此应用不使用任何远程服务器验证或用户帐户。我只是在谈论在提交过程中使用该字段作为向测试人员提供要设置的 NSUserDefaults 值的名称的一种方式。以上是关于为 Apple 应用提交测试提供后门的主要内容,如果未能解决你的问题,请参考以下文章
外部测试人员提交错误(Beta App Review)。 Apple Pay 的权利
iOS App Store 提交:Apple 是不是使用经过验证的 Facebook 帐户测试 Facebook 应用程序?