如何为Android写一个PhoneGap插件

 我来答
huanglenzhi
推荐于2016-11-20 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517176
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部

  1、第一步,要先建立一个支持PhoneGap(Cordova)的android工程

  因为这个插件本质上是安卓插件,用于PhoneGap,因此,要二者支持才行,所以我们要建立一个支持PhoneGap(Cordova)的android工程,插件在这个工程里面编写。

  我们采用cordova CLI来进行工程创建。这样会比较方便。否则要先创建安卓工程,然后手动将cordova的东西拷到工程文件夹内,还要修改代码,麻烦得很。


  1)先创建一个cordova项目

  在命令行方式下:

  [plain] view
plaincopyprint?

  cordova create hello com.example.test HelloWorld

  cordova create hello com.example.test HelloWorld


  这样就在当前路径,创建了一个名为hello的文件夹,里面是cordova的各种文件


2)设置cordova支持android平台

  在命令行方式下:

  [plain] view
plaincopyprint?

  cd hello

  cordova platform add android

  cd hello
cordova platform add android

这样在hello\platforms文件夹下,多了一个android子目录,这个就是我们要的支持phoegap的安卓工程了,插件可以在这个工程里面编写。


  2、编写插件

  1)Hello.java

  用eclipse打开该工程

  在src下新建包及class

  Hello.java:

  2)config.xml

  修改res/xml/config.xml

  在节点<widget>里加入:

  [html] view
plaincopyprint?

  <feature name="Hello">

  <param name="android-package" value="com.example.test.plugin.Hello" />

  </feature>

  3、调用插件

  调用是javascript唱独角戏。

  1)添加 js/plugin.js

  var helloPlugin = {

  say: function(successCallback, errorCallback) {

  cordova.exec(

  successCallback, // success callback function

  errorCallback, // error callback function

  'Hello', // mapped to our native Java class called "CalendarPlugin"

  'sayHello', // with this action name

  []                 // and this array of custom arguments to create our entry

  );

  }

  }

  2)修改js/index.js

  修改部分主要在结尾部分

  3)修改首页index.html

  <script type="text/javascript" src="cordova.js"></script>

  <script type="text/javascript" src="js/index.js"></script>

  <script type="text/javascript" src="js/plugin.js"></script>

  <script type="text/javascript">

  app.initialize();

  </script>


至此,我们就完成了一个for phonegap的安卓插件的编写和调用过程。

  按道理,插件应该独立于具体工程,可以供多个工程调用,但本示例是插件直接写于工程内。独立的方式,我还不知道怎么写。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式