博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PhoneGap/Cordova插件开发入门(Android版)(一)
阅读量:6223 次
发布时间:2019-06-21

本文共 1546 字,大约阅读时间需要 5 分钟。

hot3.png

####一、JavaScript和Java代码的桥接 Cordova插件的原理是,JavaScript 调用 Java,Java 调用设备功能。很显然,Java 做了一个中间过程,这里的关键在于,如何实现 JavaScript 和 Java 的桥接。 我们首先在 src 文件夹中创建一个 com.jiusem.cordova 包,在包内创建一个 TestPlugin.java 文件,编写下面的代码:

package com.jiusem.cordova;import org.apache.cordova.CallbackContext;import org.apache.cordova.CordovaPlugin;import org.json.JSONArray;public class TestPlugin extends CordovaPlugin{	public boolean execute(String action , JSONArray args, CallbackContext callbackContext ){				return true;	}}

每一款插件需要继承自 CordovaPlugin 类,而包名和插件名是自定义的,这里仅仅是一个例子。插件必须包含一个 execute 方法,它是唯一可以被 JavaScript 直接调用的方法。 在 res/xml/config.xml 文件 <widget></widget> 标签内加入下面的代码:

TestPlugin 表示插件的名称,com.jiusem.cordova.TestPlugin 表示插件的包名和类名。 下面,我们就可以用 JavaScript 调用插件的 execute 方法了:

cordova.exec 方法其他参数先不考虑,保持原状,第三个参数 TestPlugin 是插件的名称。上面的代码将会调用 TestPlugin.java 文件的 execute 方法。 运行APP,却什么都看不到,为什么呢?因为 execute 方法没有执行任何操作,只是返回了一个 true 。我们可以加入一些代码,来显示一个简单的提示语,这样我们可以确定 execute 方法确实是执行了:

public class TestPlugin extends CordovaPlugin{	public boolean execute(String action , JSONArray args, CallbackContext callbackContext ){		/*显示一个提示语*/		Context Activity = this.cordova.getActivity().getApplicationContext();		Toast.makeText(Activity, "hello,world!", Toast.LENGTH_LONG).show();		/*显示一个提示语*/				return true;	}}

这里使用了 Context 和 Toast 类,还需要在前面加入:

import android.content.Context;import android.widget.Toast;

因为 Java 在使用不在一个包的类之前,都需要先导入。 再次运行APP,将会看到提示语:hello,world! 我们完成了一个最简单的Cordova插件。

好好体会一下,如果有问题,欢迎留言,或者加QQ群:454566813,一起讨论!

转载于:https://my.oschina.net/crazymus/blog/509875

你可能感兴趣的文章
Java+Ajax实现用户名重复检验
查看>>
Runtime运行时之Class常用方法
查看>>
Python元编程:控制你想控制的一切
查看>>
利用Charles抓取数据详细流程
查看>>
如何使用 vue + typescript 编写页面 ( vuex装饰器部分 )
查看>>
JAVA设计模式之责任链模式
查看>>
JVM分析工具概述
查看>>
HTML5前端初级入门教程:AJAX及常用的两种跨域方法
查看>>
《Java编程思想》笔记08------持有对象
查看>>
Android面试之Java中级篇
查看>>
说说 Linux 命令回显出现中文乱码的解决方法
查看>>
Storm架构与运行原理
查看>>
OpenCV 图片人脸检测
查看>>
数据结构与算法-链表(下)
查看>>
[基础] JavaScript 类型转换及面试题
查看>>
Javascript设计模式
查看>>
手机/移动前端开发需要注意的20个要点
查看>>
高级单例模式:(利用自执行函数,可以通过return暴露私有变量,方法或者是通过window.方式暴露私有变量和方法)...
查看>>
iOS基于WebSocket的聊天机制(转)
查看>>
Nodejs文件上传
查看>>