我可以/我应该在 Cordova 应用程序中下载 html5 代码吗?
Posted
技术标签:
【中文标题】我可以/我应该在 Cordova 应用程序中下载 html5 代码吗?【英文标题】:Can I / should I download html5 code within a cordova app? 【发布时间】:2015-09-18 15:48:41 【问题描述】:假设我有一个基于 html5/JS 的应用程序,该应用程序包含在 cordova 电话间隙中。我可以让它启动并下载其他 html5/js 文件吗?基本上,该应用程序可以使用基本文件,但可以提供和下载附加功能或更改,而不是安装新版本的应用程序。
这种情况的用例是为可能希望拥有自己的扩展程序的企业提供应用程序。
这可能吗?这会导致该应用在苹果应用商店中被拒绝吗?你怎么认为?
谢谢!
【问题讨论】:
Apple 不允许下载 JS,除非这是在 Web 视图的上下文中完成的。我认为 cordova 在 web 视图基础中运行所有内容? 确实如此,这很奇怪。为什么苹果只在 webviews 的上下文中允许按需代码,否则不允许? 与安全性有关,从 Web 视图完成时会被沙盒化。 这是苹果文档:“3.3.2 应用程序不得下载或安装可执行代码。只有在所有脚本、代码和解释器都打包在应用程序中时,解释的代码才能在应用程序中使用,并且上述的唯一例外是由 Apple 的内置 WebKit 框架下载和运行的脚本和代码,前提是此类脚本和代码不会通过提供与预期和宣传不一致的特性或功能来改变应用程序的主要目的提交给 App Store 的应用程序的用途。” 在您实际提交应用程序之前无法得知。如果被拒绝,您可以上诉。 【参考方案1】:从理论上讲,这违反了市场规则。但在实践中,许多人通过框架加载了一些模块。
【讨论】:
它绕过市场控制系统更新应用程序/ "3.3.2 应用程序不得下载或安装可执行代码。只有在所有脚本、代码和解释器都打包在应用程序中且未下载时,解释的代码才能在应用程序中使用。唯一的例外上述内容是由 Apple 的内置 WebKit 框架下载和运行的脚本和代码,前提是此类脚本和代码不会通过提供与所提交的应用程序的预期和宣传目的不一致的特性或功能来改变应用程序的主要目的到 App Store。” 不知道“客户”希望如何“升级”应用程序。 这不再是违规行为,正如@MartinH 指出的那样,您应该更新您的答案,因为它被接受并且它是错误的【参考方案2】:来自 cmets 的回答: “3.3.2 应用程序不得下载或安装可执行代码。只有在所有脚本、代码和解释器都打包在应用程序中且未下载的情况下,解释代码才能在应用程序中使用。上述唯一例外是下载的脚本和代码并由 Apple 的内置 WebKit 框架运行,前提是此类脚本和代码不会通过提供与提交给 App Store 的应用程序的预期和宣传目的不一致的特性或功能来改变应用程序的主要目的。” – 高锰酸钾 2015-09-18 16:33
【讨论】:
以上是关于我可以/我应该在 Cordova 应用程序中下载 html5 代码吗?的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap/Cordova InAppbrowser 文件下载问题
我可以在 Cordova 中强制使用 webkit 版本吗?
Cordova/Phonegap 无法识别 FileTransfer