0

如果核心功能(AngularJS 应用程序初始化、控制器、服务)来自外部源而不包含在项目中,使用 Cordova 开发的混合应用程序是否会通过审核以在 Apple Store 中发布?

index.html 文件将如下所示:

<!DOCTYPE html>
<html>    
<head>
    <base href="http://test.com:8080/" />        
    <title>Application</title>
    <link href="app.css" rel="stylesheet" />
    <script type="text/javascript" src="file:///android_asset/www/js/jsLib.js"></script>
    <script type="text/javascript" src="js/jsApp.js"></script>
</head>

<body>
    <div ng-app="app"></div>
</body>

</html>

它会通过App Store Review Guidelines中的标准吗?

2.5.2 应用程序应在其捆绑包中自包含,不得在指定容器区域之外读取或写入数据,也不得下载、安装或执行代码,包括其他 iOS、watchOS、macOS 或 tvOS 应用程序。

4

2 回答 2

2

这是 iOS 开发者协议中的一部分。

3.3.2 除下一段规定外,应用程序不得下载或安装可执行代码。如果所有脚本、代码和解释器都打包在应用程序中并且未下载,则解释的代码只能在应用程序中使用。上述情况的唯一例外是由 Apple 的内置 WebKit 框架或 JavascriptCore 下载和运行的脚本和代码,前提是此类脚本和代码不会通过提供与预期不一致的特性或功能来改变应用程序的主要目的,并且提交给 App Store 的应用程序的广告目的。

只要你符合这个标准,你应该没问题。

另请参阅我的答案here,其中我提到如果没有可用网络,则能够使用基本功能。

https://stackoverflow.com/a/43504441/7837081

于 2017-04-20T15:15:11.807 回答
0

不,这不是问题,因为 Cordova 只是为您提供了一个 WebView,而您的代码只是在该 webview 中运行。在 webview 上运行的内容可以捆绑在应用程序(www 目录)中,也可以托管在某个地方,然后您可以在 webview 上运行它。唯一需要担心的是,如果下载了 javascript 逻辑然后在应用程序上运行而不是将其捆绑在应用程序中,那么应用程序的性能将会变慢。

于 2017-04-20T11:20:44.420 回答