前言:虽然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的字符串