Windows下plugman的安装及生成Cordova插件

xiaoxiao2021-02-28  92

Cordova中操作自定义插件上传自定义插件时会用到plugman    本章节讲述plugman的安装以及使用

1.plugman简介

一个命令行工具,用于安装和卸载Apache Cordova项目的插件

官方地址:https://www.npmjs.com/package/plugman#requirements

2.安装plugman(已成功配置好node.js和cordova)

在cmd中输入npm install -g plugman 等待

有时可能由于网络原因会失败,多尝试几次就好(本人尝试了两次才安装成功)

3.安装成功后就可以使用plugman命令生成Cordova插件模板

cmd中定位到你要生成插件的位置 cmd中输入

plugman create --name <pluginName> --plugin_id <pluginID> --plugin_version <version> [--path <directory>] [--variableNAME=VALUE]

参数: pluginName: 插件名字

pluginID: 插件id

oversion: 插件版本

directory:一个绝对或相对路径的目录,该目录将创建插件项目

variable NAME=VALUE: 额外的描述,如作者信息和相关描述

 

3.1.先定位到插件存放的地方(本人存在D:\Cordova\CordovaPlugin)

3.2.继续在3.1的基础上生成插件模板 

cmd中输入 plugman create --name PluginDemo --plugin_id org.apache.plugindemo --plugin_version 1.0.0

此时对应的文件夹下

3.3.继续在3.2基础上定位到插件位置 增加platform平台(此处以Android为例)

cmd中输入plugman platform add --platform_name android

此时上述的src文件夹下就有东西了

3.4.生成package.json文件

此文件plugman默认没有给生成 可以上传插件时要用到 所以要生成

格式 plugman createpackagejson XXXXX(你自己插件所在的位置)

继续在3.2基础上定位到插件位置

cmd中输入 plugman createpackagejson D:\Cordova\CordovaPlugin\PluginDemo 

然后按照提示填写信息

完成后 文件夹

4.两个重要的文件

4.1.plugin.xml 文件

<?xml version='1.0' encoding='utf-8'?> <plugin id="org.apache.plugindemo" version="1.0.0" xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android"> <name>PluginDemo</name> <js-module name="PluginDemo" src="www/PluginDemo.js"> <clobbers target="cordova.plugins.PluginDemo" /> </js-module> <platform name="android"> <config-file parent="/*" target="res/xml/config.xml"> <feature name="PluginDemo"> <param name="android-package" value="org.apache.plugindemo.PluginDemo" /> </feature> </config-file> <config-file parent="/*" target="AndroidManifest.xml"> </config-file> <source-file src="src/android/PluginDemo.java" target-dir="src/org/apache/plugindemo/PluginDemo" /> </platform> </plugin>

这里有几个定义,最好理解一下:

1.clobbers : 非常重要。前端工程师在使用的时候通过这个 clobbers 去调用www/PluginDemo.js的公开方法

2.feature 标签定义了 (服务名)name

3.param name="android-package" value="org.apache.plugindemo.PluginDemo" 

定义Android平台下的底层实现的 包名.类 :org.apache.plugindemo.PluginDemo

4.2.package.json文件

{   "name": "PluginDemo",   "version": "1.0.0",   "description": "This is a plugin",   "cordova": {     "id": "org.apache.plugindemo",     "platforms": [       "android"     ]   },   "repository": {     "type": "git",     "url": "git+https://github.com/wujianning/NumPlugin.git"   },   "keywords": [     "ecosystem:cordova",     "cordova-android"   ],   "author": "wjn",   "license": "Apache 2.0",   "bugs": {     "url": "https://github.com/wujianning/NumPlugin/issues"   },   "homepage": "https://github.com/wujianning/NumPlugin#readme" }

转载请注明原文地址: https://www.6miu.com/read-75054.html

最新回复(0)