【问题标题】:Beginning with Apache Cordova从 Apache Cordova 开始
【发布时间】:2021-03-28 01:59:16
【问题描述】:

我刚刚下载了 Apache Cordova,似乎有特定于平台的版本。在将其移植到另一个平台之前,我是否必须为特定平台编写代码?是否可以创建一个多平台项目?我是否正确理解了我应该开始工作的方式?

这也是 Apache Cordova 主页所说的。

而且因为这些 JavaScript API 在多个 设备平台和基于 Web 标准构建的应用程序应该是 可移植到其他设备平台,几乎没有更改。

谢谢。

【问题讨论】:

    标签: cordova


    【解决方案1】:

    我认为您对 Cordova 的理解有些许差距。 Cordova 用于构建混合移动应用程序。混合意味着您的应用程序基本上是一个使用 HTML/CSS/JavaScript 构建的标准网站,但它可以访问本机设备功能。 通常,当您使用 JavaScript 构建常规网站时,如果不直接使用本机代码,您将无法做某些事情,例如拍照或浏览手机上的联系人。但是,Cordova 允许您仅从 JavaScript 访问这些本机函数!而且您永远不必接触本机代码!因此,您将使用 HTML/JavaScript/CSS 构建一个应用程序(一个统一的代码库!),并且在完成构建过程之后,将有多个应用程序文件,一个用于您“构建”它的每个本机平台。

    是的,使用 Cordova 的一大好处是您可以轻松创建多平台应用程序。你要做的是首先在 HTML/JavaScript 中创建你的应用程序——当你需要使用原生 API 时,你可以调用适当的 Cordova JavaScript API——这个 API 在所有平台上都是通用的,这意味着调用 cordova.someAPI.doCoolDeviceOnlyThingThatBrowsersCantDoYet(parameter) 将无论用户使用什么设备,都期望相同的参数。然后,您构建的 Cordova 应用程序将调用等效的本机功能,无论该应用程序是为哪个操作系统构建的。

    要为 iOS 和 Android 创建应用程序,您需要set up the appropriate build tools for both platforms。然后您要做的是将构成您的应用程序的 HTML/Javascript 文件导入这些工具并“构建”本机应用程序,它将您的 HTML/JavaScript 包装在本机代码中,添加设备特定的 Cordova 代码(通常以像 Android 上的 cordova.jar 之类的东西)并创建可下载的包,然后您可以将其发布到应用商店。将您的应用程序“编译”到多个平台的过程可能会很痛苦,但幸运的是,有一项自动化服务可以提供帮助,因此请查看 PhoneGap build while it's still free

    您应该能够仅使用您最喜欢的 HTML 编辑器、Ripple 模拟器和 Cordova API 参考指南开始构建应用程序。但是,您可能需要一个真实的设备来测试和构建您的应用程序,因此您可能必须设置至少一个本机环境(例如带有 Android ADT 和适当的 cordova.js 文件的 Eclipse。)(cordova .js 文件在平台之间非常相似,除非平台之间存在差异,例如在处理 JavaScript 和本机代码之间通信的桥中。)

    希望我已经回答了你所有的问题 - 祝你好运!

    【讨论】:

      【解决方案2】:

      只要您不需要API,您就可以在浏览器中编写所有代码。但是,当您要测试 Cordova API 功能时,您必须在平台上运行。

      平台特定文件(例如 android 的 eclipse 项目)包含一个 www 文件夹(android 的 assets/www),您必须在其中放置所有代码。在该文件夹中,所有内容都应该是跨平台的,但有一个例外:cordova.js 文件,其中包含到每个平台的本机代码的桥梁。

      您也可以尝试Ripple直接在浏览器上运行项目,其优势在于调试工具更好。不过,它远非功能完整。

      【讨论】:

        【解决方案3】:

        @MBillau 的回答完美地描述了这个概念,从源代码的角度来看,有一些特定的 CLI 相关命令:

        • cordova create com.domain.projectname - 创建一个项目。

        • cordova platform add ioscordova platform add android - 添加目标平台,创建项目后记得cd com.domain.projectname,否则您可能会在终端中看到类似Current working directory is not a Cordova-based project. 的内容。

        • cordova plugin add pluginname - 将特定插件添加到项目中,您经常需要这样做。在您的终端中,您应该有类似 Installing "pluginname" for iosAdding pluginname to package.json 的内容。

        • 最后cordova buildcordova build ioscordova build android 来构建它,cordova emulate androidcordova run android 在你的设备上运行它或在Android 上模拟。对于 iOS,您需要 Xcode。

        您可以在https://cordova.apache.org/docs/en/latest/找到更多信息

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-07-12
          • 1970-01-01
          • 2017-01-24
          • 2015-12-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多