牛刀平台iOS应用封装指南
本文档提供了将牛刀平台应用封装为iOS应用的详尽步骤。
Android的打包也可以参考此文档,需要注意的是Android的要安装Android SDK,具体可以查一下cordova的官方文档
准备工作
开始之前,请确认您的开发环境符合以下要求:
搭载最新macOS系统的Mac电脑。
安装了最新版Node.js。
➜ ~ node -v v16.20.2
已安装Xcode(iOS开发所需),可从Mac App Store获取。
安装Cordova并创建iOS项目
通过npm安装Cordova CLI,并创建新的iOS项目:
# 安装Cordova命令行工具
npm install -g cordova
# 创建新的iOS应用项目
cordova create MyApp
cd MyApp
# 为项目添加iOS平台支持
cordova platform add ios
cordova prepare ios
npm install
# 演示添加插件,实际插件按需添加
cordova plugin add cordova-plugin-battery-status
cordova plugin add cordova-plugin-device
执行上述命令后,一个含iOS原生项目的Cordova工程将被创建。
使用Xcode配置和启动项目
利用Xcode打开您的HelloCordova项目。
请确保选中项目(Project),而非库(Library)。
将启动页URL修改为您的应用地址。
请注意,必须对两个config文件都进行修改。
修改代码段如下:
<content src="您的应用URL" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<!-- 允许WebView导航至任意URL -->
<allow-navigation href="https://*/*" />
<!-- 配置可处理的URL模式 -->
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
测试项目
按照以上配置,可以在Xcode中选择模拟器进行项目测试。
选择合适的模拟设备,点击运行图标,模拟器将自动启动并打开您配置的网址。
大多数浏览器特性应能在模拟器中正常工作。
高级配置:插件集成
原生iOS应用可能需要访问特殊功能,例如摄像头、通讯录、蓝牙或地理位置,这可以通过集成Cordova插件实现。
安装所需插件
- 具体插件的安装请参照上文指南。
- 插件的选择、能力及API,可通过插件市场、GitHub或自行开发获取。
- 官方插件列表:Cordova Plugins
将插件JS SDK集成至牛刀JS
- 在目标应用的IDE中,将Xcode工程的
www
目录内部分内容复制到牛刀平台的cordova
目录中。
这两个文件及plugins
目录在安装插件后会自动生成。
确保这些文件被复制到应用的
cordova
目录中(如果没有此目录,请创建一个)。
- 在应用的app.js中添加Cordova加载脚本。
示例加载代码:
(function loadCordova() {
let head = document.getElementsByTagName('head')[0];
let script = document.createElement('script');
script.type = 'text/javascript';
script.charset = 'utf-8';
script.async = true;
script.src = "./mobile/cordova/cordova.js";
head.appendChild(script);
})();
确认代码无误后,发布entry。此时,插件功能已完全集成至牛刀平台。
在需要使用插件API的页面,根据插件文档直接进行调用。
如图,已可以调用
device
和battery
插件的API。
将应用发布至iOS App Store
应用开发完毕且准备上架App Store时,需要按照Apple的发布指南构建发布版本,并通过Xcode提交至App Store Connect。
此指南仅提供了封装Cordova iOS应用的基础步骤。请参考Cordova的官方文档及Apple的发布指南了解更多细节和高级配置。