cordova插件开发

牛奶007 牛奶007     2022-09-04     757

关键词:

从事基于cordova开发混合APP也快一年了,一直没有自己“亲自操刀”写一个插件,因为网上插件太丰富了,可耻了。

今天完整的记录一次插件开发。

cordova环境6.4.0

  • 第一步安装:plugman
npm install -g plugman
  •  第二步:创建插件
plugman create --name <pluginName> --plugin_id <pluginID> --plugin_version <version> [--path <directory>] [--variableNAME=VALUE]
plugman create --name TestDialog --plugin_id com.testadialog --plugin_version 0.0.1

创建好了以后 进入 该文件夹

然后该文件里面会自动帮我们创建好一系列文件

test-plugin-dialog

如下目录结构

-src

---android

-----TestDialog.java

-www

---TestDialog.js

-plugin.xml

如图:

  • 第三步:理解plugin.xml文件
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android" id="com.testa_dialog" version="0.0.1">
  <name>TestDialog</name>
       //存放js接口文件 
  <js-module name="TestDialog" src="www/TestDialog.js">
    <clobbers target="cordova.plugins.TestDialog"/>
  </js-module>
      //对应插件的平台
  <platform name="android">
    <config-file parent="/*" target="res/xml/config.xml">
      <feature name="TestDialog">
        <param name="android-package" value="com.testa_dialog.TestDialog"/>
      </feature>
    </config-file>
    <config-file parent="/*" target="AndroidManifest.xml"/>
    <source-file src="src/android/TestDialog.java" target-dir="src/com/testa_dialog/TestDialog"/>
  </platform>
</plugin>
  • 第四步:安装插件 
cordova plugin add ./TestDialog

  • 第五步:成功安装插件后,我们把android工程导入android studio中,第一次导入可能需要一些时间,耐心等待。如果实在等待不了,请FQ。

  • 第六步:理解cordova-plugin.js文件

 

图中的id对应是JS 接口文件中的cordova.define()中的一个参数;如下所示

cordova.define("com.testadialog.TestDialog", function(require, exports, module) {
var exec = require('cordova/exec');

exports.coolMethod = function(arg0, success, error) {
    exec(success, error, "TestDialog", "coolMethod", [arg0]);
};

});

 

clobbers中的cordova.plugins.TestDialog是js 全局变量,配合你的js插件接口使用。

 

 在你的js文件中,如果需要调用coolMethod方法,即:

cordova.plugins.TestDialog.coolMethod()//调用该方法
  •  第六步:具体编写插件

  • exec函数中的参数:
  • success:即native层成功回调
  • error:即native层失败回调
  • 第三个参数:即对应java类
  • 第四个参数:即navtive对应的方法
  • 第五个参数:传递给native层的变量
  • 分别对应android中的:

 

 

cordova插件开发

 公司现在用的ionic开发一些APP.中间涉及到自定义一些cordova插件.所以这里记录一下.这里主要参照一下这个 AndroidCordova插件开发之自定义插件生成安装包1.搭建一个插件框架,这里使用的是plugman 安装那些就不说了.具体... 查看详情

Cordova 插件开发工作流程

】Cordova插件开发工作流程【英文标题】:Cordovaplugindevelopmentworkflow【发布时间】:2014-07-2313:32:15【问题描述】:在构建HybridiOSCordova应用程序(依赖于CordovaCLI)时,我偶然发现需要构建自定义插件。我的工作流程如下:我在我的... 查看详情

为cordova(Android)开发插件时无法找到源java类

】为cordova(Android)开发插件时无法找到源java类【英文标题】:Unabletofindsourcejavaclasswhiledevelopingpluginforcordova(Android)【发布时间】:2018-09-2616:27:03【问题描述】:我正在为cordova开发一个插件,该插件使用名为pagseguro的巴西支付API... 查看详情

cordova开发-2具体插件的使用

1.获取设备信息 首先添加插件 cordovapluginaddcorova-plugin-device  这样直接在页面调用device.platform,device.uuid等就可以获取设备信息这里device哪来的呢?当我们通过插件安装后,会在cordova-plugins.js中生成{"id":"cordova-plugin-d... 查看详情

cordova跨平台app开发02_自定义插件开发与安装

视频地址:http://t.cn/RacmXiy cordova的自定义插件由js、原生代码文件(java、oc)、plugin.xml三部分组成。cordvoa提供了命令来创建插件模版项目。创建插件模版1.     pluman的安装npminstall–gplugman2.    &... 查看详情

cordova +ios 应用程序开发中的设置工具插件

】cordova+ios应用程序开发中的设置工具插件【英文标题】:Settingstoolpluginincordova+iosappdevelopment【发布时间】:2013-05-0205:43:39【问题描述】:我正在使用cordova2.1.0框架创建我的应用程序。我想在设备(IPOD/Iphone/Ipad)的设置页面中添... 查看详情

cordova开发-1项目的创建

需要先进入到项目路径1.创建项目cordovacreatehellocom.example.helloHelloWorld2.生成iOScordovaplatformaddios--save3.编译cordovabuildios 4.插件cordovapluginsearchcamera搜索插件cordovapluginls查看插件cordovapluginaddcordova-plug 查看详情

如何使用cordova插件中downloader

不知道题主是不是用的cordova3.0以上的版本如果是的话。cordova_plugins.js是不需要手动引入的。一个常规的cordova项目的文件目录结构是这样的config.xmlhooksplatforms【buildfile】|----android/ios|----www会自动生成cordova_plugins.js,并且不需要手... 查看详情

cordova-plugin-whitelist这个插件怎么用

参考技术A在实际的项目开发中,需要用到cordova的插件,进行各个不同平台的辅助开发,我们可以通过plugins.cordova.io对现有插件的搜索,以及安装。插件的安装和使用,详细可以通过查阅Cordova的官网文档TheCommand-LineInterface 查看详情

Cordova - 插件 Admob 免费显示仅测试广告

】Cordova-插件Admob免费显示仅测试广告【英文标题】:Cordova-pluginAdmobfreeshowTestAdsonly【发布时间】:2021-09-1717:59:38【问题描述】:我使用Cordova开发了一个小型应用程序。我通过免费的Admob插件添加了广告。该应用已在Play商店发布... 查看详情

使用自定义cordova插件找不到类异常

】使用自定义cordova插件找不到类异常【英文标题】:ClassNotFoundExceptionusingcustomcordovaplugin【发布时间】:2018-01-0218:00:49【问题描述】:我正在开发一个使用自定义API通过USB访问打印机的打印应用程序,因此我需要一个自定义Cordova... 查看详情

为啥所有 Cordova 插件都无法在 iOS 上加载?

】为啥所有Cordova插件都无法在iOS上加载?【英文标题】:WhywouldallCordovapluginsfailtoloadoniOS?为什么所有Cordova插件都无法在iOS上加载?【发布时间】:2019-04-0401:09:23【问题描述】:有人要求我对之前由另一位开发人员构建的(非Ionic... 查看详情

在 Eclipse IDE 中使用 Cordova 6 及更高版本开发自定义 android 插件

】在EclipseIDE中使用Cordova6及更高版本开发自定义android插件【英文标题】:developingcustomandroidpluginsusingCordova6andgreaterineclipseide【发布时间】:2017-11-0915:33:13【问题描述】:我正在使用eclipseide在科尔多瓦为android制作本机插件。我似... 查看详情

将 Cordova 插件手动添加到 Cordova 项目的正确方法是啥

】将Cordova插件手动添加到Cordova项目的正确方法是啥【英文标题】:whatisthecorrectwaytomanuallyaddCordovaplugintoCordovaproject将Cordova插件手动添加到Cordova项目的正确方法是什么【发布时间】:2014-11-2407:06:40【问题描述】:我正在使用Android... 查看详情

如何启动一个完整重建插件的 Cordova 项目?

】如何启动一个完整重建插件的Cordova项目?【英文标题】:HowtolaunchaCordovaprojectwithfullrebuildingofplugins?【发布时间】:2021-04-1822:42:09【问题描述】:我正在开发一个Cordova插件。由于无法执行插件,我正在使用Cordova项目对其进行测... 查看详情

是否可以在 NativeScript 中使用 Cordova 插件?

】是否可以在NativeScript中使用Cordova插件?【英文标题】:IsitpossibletouseCordovaPlugininNativeScript?【发布时间】:2018-11-1004:29:19【问题描述】:我正在开发一个NativeScript项目并希望实现自定义Cordova插件的功能。有没有可能我可以将我... 查看详情

ionic4+angular7+cordova开发入门(代码片段)

...应用。但只建议开发简单应用。复杂的应用需要用到许多cordova插件,而cordova插件的更新或者移动平台的更新很可能导致插件的不可用,维护升级成本较高。安装安装node.js。https://nodejs.org/en/通过node.j安装ionicnpminstall-gionic查看安... 查看详情

Cordova 日历插件添加与会者

】Cordova日历插件添加与会者【英文标题】:Cordovacalendarpluginaddattendees【发布时间】:2017-09-1111:09:57【问题描述】:我正在开发一个可以发送创建日历事件的Cordova应用程序(目前是Android)。在浏览Cordova文档时,我找不到通过Cordo... 查看详情