创建第三方插件

npx plugman create --name myplugin --plugin_id xiao.jin.plugin --plugin_version 1.0.0

添加平台支持

npx plugman platform add --platform_name android

初始化插件

npx plugman createpackagejson ./

进入我们项目目录,引入我们刚刚自定义的插件

npx cordova plugin add ..\myplugin\

安装插件依赖

npx cordova prepare

删除代码里的平台

npx cordova platform rm android

重新安装平台

npx cordova platform add android

重新跑起来

npx cordova run android



调试

测试代码

function onSuccess1(res) {
console.log('成功啦:res')
console.log(res)
alert('成功啦:'+res)
}
function onError1(res) {
console.log('出错啦:res')
console.log(res)
alert('出错啦' + res)
}
window.cordova.plugins.myplugin.coolMethod('test plugin myplugin', onSuccess1, onError1)

开始写原生代码到插件里,继续调试

例如我们写了一些新的代码到插件里 下面是插件目录里的

  • cordova_plugin\myplugin\www\myplugin.js
var exec = require('cordova/exec');

exports.coolMethod = function (arg0, success, error) {
exec(success, error, 'myplugin', 'coolMethod', [arg0]);
};
exports.getUserToken = function (arg0, success, error) {
exec(success, error, 'myplugin', 'coolMethod', [arg0]);
};
exports.getStaffId = function (arg0, success, error) {
exec(success, error, 'myplugin', 'coolMethod', [arg0]);
};
exports.getStaffName = function (arg0, success, error) {
exec(success, error, 'myplugin', 'coolMethod', [arg0]);
};

修改完成以后,开始执行下列操作

进入自己的项目目录
cd ..\splugin\
删除项目中的这个有问题的插件,记得后面那个是插件的ID哦
npx cordova plugin rm xiao.jin.plugin
重新添加插件,后面那个是插件相对路径
npx cordova plugin add ..\myplugin\
删除代码里的平台
npx cordova platform rm android
重新安装平台
npx cordova platform add android
安装插件依赖
npx cordova prepare 安装插件依赖
插上手机,重新跑起来
npx cordova run android

跑起来啦!开始测试

很开心,我们添加的三个方法都上去了哇哦

开始自己写原生代码自定义这三个方法哇~~

如果你觉得这么调试很麻烦,其实也可以这样

下面这个代码是已经执行完毕上面的操作后,我使用AS软件打开,进行调试代码使用,我们可以在这里进行原生代码的修改以及调试,但是切记,调试完毕一定要复制粘贴到外面的插件哇!!!!

如果用AS 改了代码,一定要记得复制到自己的插件里,调试完以后再重新安装一遍哇!!!!

修改xml注意事项

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

最新文章

  1. 命令行提交本地项目到github上
  2. easyui datagrid 合并单元格
  3. Reapp - 下一代的 Hybrid App 开发框架
  4. 移动web前端之meta标签
  5. 20145317彭垚 《Java程序设计》第6周学习总结
  6. 【杂记】SQL篇
  7. JSOI2008最大数(线段树)
  8. Qt5遇到的问题
  9. oracle如何设置show parameter显示隐含参数
  10. HTML5定稿:手机App将三年内消失,互联网世界的第二次大战
  11. .NET Core 2.0体验
  12. 简单多播委托Demo
  13. mysql5.6安装优化实例
  14. nodejs + typescirpt + vs code
  15. Locust 集合点
  16. interface接口——公共规范标准
  17. 事务隔离级别引发的"血案"
  18. Permission denied (publickey). fatal: The remote end hung up unexpectedly 解决办法
  19. sql server获取插入记录后的ID
  20. Java通过匿名类来实现回调函数

热门文章

  1. 云原生之旅 - 4)基础设施即代码 使用 Terraform 创建 Kubernetes
  2. IP分类与子网划分
  3. 云原生之旅 - 9)云原生时代网关的后起之秀Envoy Proxy 和基于Envoy 的 Emissary Ingress
  4. Codeforces Round #802 (Div. 2)C. Helping the Nature(差分)
  5. Android ViewHolder
  6. 「浙江理工大学ACM入队200题系列」问题 A: 零基础学C/C++34—— 3个数比较大小(冒泡排序与选择排序算法)
  7. 第2-1-4章 SpringBoot整合FastDFS文件存储服务
  8. 当前数据库表空间达到32G,需要扩容
  9. ES的java端API操作
  10. golang基础语法学习