【问题标题】:PhoneGap Cordova Browser based and appPhoneGap Cordova 基于浏览器和应用程序
【发布时间】:2017-04-21 18:25:21
【问题描述】:

假设是从头开始创建一个网站,并且还想创建应用程序。

您能否仅使用 REST API 创建网站并使其在浏览器和 PhoneGap 上运行?会不会与您可能使用的 Cordova 插件发生冲突?

所以设计是响应式的,它的所有 HTML、CSS 和 Javascript 都连接到浏览器网站和应用程序的 REST API(登录、注册、消息、数据库调用等)。

这样,您可以对所有内容使用相同的代码,并且仍然可以为应用使用一些出色的 Cordova 插件,以使其更加灵活。

这行得通吗?

【问题讨论】:

    标签: rest api cordova phonegap


    【解决方案1】:

    我在其他地方发布了这个答案,但我认为它在这里是相关的。

    不幸的是,您的应用要通过 Apple App Store 的批准,它必须提供一些基本功能并在没有互联网连接的情况下正确显示。这意味着至少,如果您计划在服务器上生成内容,您可能需要 Cordova 插件来获取网络信息:

    https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-network-information/

    我会确保您熟悉 Apple 人机界面指南:

    https://developer.apple.com/ios/human-interface-guidelines/overview/design-principles/

    您可能还需要捆绑任何 JavaScript。 Apple 对下载代码的应用非常挑剔(这可能包括 JavaScript)。

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

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

    另一个大问题是性能。您的应用程序将如何处理较差的 3G 甚至 2G 连接?您是否需要缓存来自 API 的响应并仅在服务器上发生更改时才下载它们?

    如果用户在浏览器上浏览您的网站,他们知道他们需要互联网连接,如果他们正在使用您的应用,他们希望它在在线和离线时都能正常工作。

    编辑

    Apple 通常使用这个理由来拒绝仅限网站的应用程序。

    我们发现,您的应用所提供的体验与网页浏览体验并没有太大的不同,就像通过整合原生 iOS 功能一样。

    虽然您的应用内容可能与您的网站或其他现有网站有所不同,但它所提供的体验与使用 Safari 的一般体验并没有显着差异,这符合 App Store 审核指南的要求。

    【讨论】:

    • 有趣.. 我有两个适用于 iOS 和 Android 的应用程序,它们只是网站的简单 WebView.. 如果你不这样做,我开始使用的这个新应用程序也没有意义没有互联网连接,所以离线不会有问题。
    • 是的,许多应用程序确实需要您有互联网连接。我只是指出有很多事情需要考虑,尤其是在 Apple App Store 审核过程中。一些纯 webview 应用程序可以通过,而有些则不能。我添加了一个常见的拒绝原因,苹果用于基本上显示网站的应用程序。
    • 没问题。对不起,如果我的回答有点消极。只是不希望您为可能会被拒绝的应用付出很多努力,最终还是不得不返工。
    猜你喜欢
    • 2014-09-09
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    • 2012-01-26
    • 2016-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多