1.配置环境
- 配置 node.js 环境下载地址: https://nodejs.org/en/
查看是否安转 node 环境node --version
gaochongyang:~ enmonster$ node --version
v14.5.0
- 使用 node.js 的依赖包管理工具 npm 进行cordova 的安装
安装 $ sudo npm install -g cordova
卸载 sudo npm uninstall cordova -g
查看是否安转 cordova --version
gaochongyang:~ enmonster$ cordova --version
9.0.0 (cordova-lib@9.0.1)
2.新建项目
命令 cordova create hello com.example.hello HelloWorld
hello:新建的文件夹的名称,你的程序会放在这下面。
com.example.hello:AppID ,个人编写的话就跟着com.example来写就行。
HelloWorld:应用项目的名称。
然后我们进入到hello的文件夹下 cd hello
在这个文件夹下cordova platform add ios 添加一个 iOS平台。
3.创建Cordova插件
1.安装plugman,Cordova需要用这个来创建插件
- 命令: sudo npm install -g plugman
2.安装完成plugman后,创建插件
- 命令:plugman create --name [插件名] --plugin_id [插件ID] --plugin_version [插件版本号]
- 例子:plugman create --name CDVXYProgress --plugin_id cordova-plugin-xyprogress --plugin_version 1.0.1
然后在plugins文件夹下面就会生成目录如下
image.png
然后在src目录下新建ios目录,然后随便建立一个工程,在工程里编辑功能,编辑完成后,把.h.m文件拖到iOS目录下。
image.png
对了,还要每次配置plugin.xml文件
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
id="cordova-plugin-Map"
version="1.1.1-dev">
<name>Map</name>
<description>Cordova Map Plugin</description>
<author>YT</author>
<license>Apache 2.0</license>
<keywords>cordova,QRCode</keywords>
<repo>https://git@github.com:OceanOver/QRCode.git</repo>
<js-module src="www/CDVXYProgress.js" name="CDVXYProgress">//name=“”接的是插件的入口的类名
<clobbers target="CDVXYProgress" />
</js-module>
<!-- ios -->
<platform name="ios">
<config-file target="config.xml" parent="/*">
<feature name="Map">//插件名,需与前端沟通一致
<param name="ios-package" value="CarController" />//这个插件的入口类
</feature>
</config-file>
<header-file src="src/ios/CarController.h" />
<source-file src="src/ios/CarController.m" />
<framework src="CoreLocation.framework" />
<framework src="MapKit.framework" />
</platform>
</plugin>
配置好后,还需要测试一下插件是否准备完毕:cordova platform add ios
当出现Platform ios already added 后,即代表插件可以使用。
当新加了新的插件后,需要先cordova platform remove ios,移除工程,然后重新cordova platform add ios,才可以同步工程配置和插件,不过要记得提前备份好非插件代码,否则会一并删除。
同时,与h5进行配合,对方会发过来一个文件夹,替换掉根目录下www文件夹里的内容,以及platforms目录下的www文件即可。
这样,一个插件功能就完成了
网友评论