基于我见过的几个问题:
很明显,应用程序不允许在启动时(或通过应用程序中的其他机制)“自我更新”代码,因为新代码是提交到应用商店的应用程序的一部分。
但是,有很多应用程序在启动时执行自动更新(例如,this popular game在首次启动时下载几百MB) - 似乎这种类型的东西是允许资源的 - 只要因为下载是数据/资源 - 不会改变编译代码的东西。
从技术上讲,应用程序资源包中包含的Javascript可以被视为资源,因此可以安全地自动更新任何包含的Javascript。另一方面,Javascript可以被视为“代码”,因为它由Webkit(在UIWebView
中)解释并执行。如果这算作代码,那么甚至可以极端地创建一些解释器,该解释器根据xml文件(非常容易被认为是资源)的内容运行应用程序中包含的命令,该文件会自动更新到应用程序。这会算作'代码'吗?
所以,我的主要问题是我正在寻找的答案:
此外,由于我确信会被问到,我想要在本地下载和执行javascript而不是一直点击远程站点的主要原因是性能/离线功能。