App Store审核指南说:“以任何方式或形式下载代码的应用都将被拒绝。”
我想使用Challenge-Response进行身份验证。该应用程序具有一组基本算法,如SHA-1,SHA-256,MD5,DES,AES等。挑战服务器包含一个算法名称的数组,其中包含随机排列和字符串名称A.客户端使用算法和质询指示的序列来操作字符串A,并将其作为响应返回给服务器。
虽然我在服务器和客户端之间传输的是一堆字符串,但它们确实改变了我的应用程序的行为。我应该将它们视为一种代码吗?如果没有,为什么苹果禁止下载执行shell代码?我的意思是,shell代码也是一堆字符串,并由运行环境解释。基本区别在哪里?
原谅我的英语:)
答案 0 :(得分:7)
Apple担心并希望阻止的是那些通过审批流程(伪装成良性)并随后改变其基本功能的应用程序。
一个极端的例子是应用程序在用户设备上安装新的恶意可执行代码后下载。
Apple正在使用广泛的措辞,以便能够拒绝以任何方式试图对用户有害的任何应用。不可能具体描述每种技术和具体方式,因此Apple保持措辞宽松。
应用程序“下载代码”以某种形式或其他形式,考虑访问返回JSON格式响应的API的应用程序。从技术上讲,它可以被视为代码,它可以改变应用程序行为(显示哪个视图,某个视图上可用的选项等)。但是以这种方式访问API的应用程序肯定不会被拒绝。
从我的问题中我可以收集到的,听起来你不必担心指南中的特定条款。