1:安裝plugman,在終端輸入
cnpm install -g plugman
2:新建一個插件myEcho
plugman create --name 《Name》 --plugin_id 《pluginID》 --plugin_version 《version》
《Name》替換爲 myEcho;
《pluginID》 替換爲 com.lulee007.myEcho
《version》 替換爲 0.0.1
在終端輸入:plugman create --name myEcho --plugin_id com.lulee007.Echo --plugin_version 0.0.1
3:進入myEcho項目中添加一個android平臺
plugman platform add --platform_name <platform>
把<platform>替換爲 android
plugman platform add --platform_name android
這時候查看我們的myEcho目錄下的 src會新增一個目錄android裏面會有一個java文件:myEcho.java
4:plugin.xml配置文化修改
id: 插件的標識
name:插件的名稱
description:描述信息
js-module:js文件指向 www/myEcho.js
platform:支持的平臺
source-file:src當前文件路徑地址,target-dir當Build應用的時候會安裝到指定的目錄下
示例:
<source-file src="src/android/myEcho.java" target-dir="src/com/lulee007/myEcho/myEcho" />
<source-file src="src/android/libuhf-tools.so" target-dir="libs/armeabi/" />
<source-file src="src/android/okhttp-2.5.0.jar" target-dir="libs/" />
再看下myEcho.js文件:
var exec = require('cordova/exec')引入cordova下的exec庫
exec(success, error, "myEcho", "coolMethod", [arg0]);
success:調用成功時的回調函數
error:調用出錯時的回調函數
"myEcho":插件名稱
"coolMethod":執行插件裏的方法
[arg0]:可選參數,執行方法的參數數組
最終修改如圖:
接着修改myEcho.java文件:
在execute方法裏有個判斷,
action.equals("coolMethod")跟myEcho.js文件的exec裏面的coolMethod對應,表示是否執行我們所對應的方法如果不是則直接返回false結束
String message = args.getString(0)接收傳過來的參數,可多個
callbackContext.success()回調
5:安裝插件
進入項目目錄輸入:
cordova plugin add 插件目錄
進入項目的plugins文件夾內查看是否安裝成功
調用:
window.plugins.myEcho("echo my text",
function(data){
alert(data);
},
function(error){
alert(error);
});
如果要對插件進行更新需要進行移動:
cordova plugin remove com.lulee007.myEcho
cordova plugin add 插件目錄