Cordova 是一个将 Web 应用程序封装成原生 App 的框架。要了解可添加的平台,可以运行 cordova platform 命令。例如,首先进入项目目录 cd myApp,然后添加 Android 平台:cordova platform add android。
运行应用时,使用命令 cordova run <platform name>,其中平台名可以是 browser、android、iOS 等,例如 cordova run android。安装完成后,项目目录包含几个关键文件夹:hooks 用于存放钩子脚本;platforms 包含平台相关文件;plugins 存放插件;www 存放 Web 资源。
config.xml 文件是全局配置文件,包含名称、描述、作者等信息。<content> 标签指定应用启动页面为 index.html,<plugin> 标签列出已安装的插件。更多细节可参考官方文档。
要将远端 Web 应用引入 Cordova,首先在 config.xml 中添加 <access origin="*" /> 标签,放在 name 标签上方。然后,修改 www 文件夹下的 index.js 文件,在 onDeviceReady 函数中重定向到远端 URL,例如 var targetUrl = "https://cordovahostedweb-starter.azurewebsites.net/";。接着,将 index.html 文件内容替换为包含重定向逻辑的简化版本,并在 meta 标签中添加 gap:...; 和远端地址。原理是应用启动时加载 index.html,然后通过 JavaScript 重定向到远端页面。
打包 APK 分为 debug 和 release 版本。手动打包流程包括 build、sign 和 align 步骤。使用 cordova build android --release 生成未签名的 APK 文件。然后生成数字签名文件:keytool -genkey -v -keystore release-key.keystore -alias cordova-demo -keyalg RSA -keysize 2048 -validity 10000,设置密码。签名命令为:jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore release-key.keystore android-release-unsigned.apk cordova-demo。最后优化:zipalign -v 4 android-release-unsigned.apk cordova-demo.apk。
自动打包可通过配置 build.json 文件简化:包含 keystore 路径、别名和密码信息,然后运行 cordova build --release。另一种方法是使用 Gradle 配置。
更改应用图标需安装 cordova-plugin-splashscreen 插件:cordova plugin add cordova-plugin-splashscreen。在 config.xml 中添加平台特定配置,例如 Android 和 iOS 的图标路径,并设置显示时间。