Android开发之-----------cordova自定义插件

前言:虽然cordova官方已经提供了90%的插件,我们只需要安装就可以直接使用,如需了解官方插件使用详情请移步 

https://www.w3cschool.cn/cordova/

,但是这些可能不能满足我们的需求,这时我们就需要自定义插件来满足需求,一开始自定义插件,我踩了许多坑,在这里我简单记一下,以便大家学习,少走弯路;

重要的事情说三遍,

一旦我们改了插件实现逻辑,一定要把插件源码类覆盖,移除插件,并重新添加插件,

一旦我们改了插件实现逻辑,一定要把插件源码类覆盖,移除插件,并重新添加插件,

一旦我们改了插件实现逻辑,一定要把插件源码类覆盖,移除插件,并重新添加插件,

可以下载源码:https://download.csdn.net/download/mycsdn_ckb/10488686

详细步骤如下:

1,安装plugman

输入命令: npm install -g plugman

2,创建插件

输入命令: plugman create --name 插件名 --plugin_id 插件ID --plugin_version 插件版本号

例子: plugman create --name ToastPlugin --plugin_id plugin_ToastPlugin --plugin_version 1.0.0


进入插件目录  cd ToastPlugin


给插件添加Android平台

执行命令:plugman platform add --platform_name android


到此命令创建的插件已完成


生产的plugin.xml文件内容如下


我们只需要修改


为:


即可

使用 npm init 命令直接 回车  即可生成package.json文件


到此,我们自定义插件就完成了,


到工程目录下用cordova plugin add 自定义插件的地址 即可将插件添加到我们的cordova工程中

运行结果如下:说明成功将插件添加到工程


从AndroidStudio中查看


修改  plugin_ToastPlugin包下的ToastPlugin.java文件


将该类拷贝到自定义插件将原来的类覆盖


修改自定义插件的js文件


在index.html 中添加一个button

并且将工程项目中的www下 的  index.html覆盖,

修改index.js 文件如下:


并且覆盖www/js index.js文件

使用 cordova plugin ls 查看本项目已添加的插件


使用 cordova plugin rm plugin_ToastPlugin 将该插件从项目中移除


使用 cordova plugin add E:\WorkSpace\Cordova\hello\CustomPlugins\ToastPlugin 将插件重新添加到工程中



使用 cordova clean 把工程清一下

使用 cordova build android  打包,

使用 adb  install 将刚才打包好的apk安装到手机上,运行即

点击  toastBtn 按钮即可弹出Android系统toast,已我们返回给h5的字符串