phoneGap的Android下编写phonegap 插件
一、 javascript 端的编写
第一个参数 成功的回调函数
第二个参数 失败的回调函数
第三个参数 是插件的类名称,也就是后台java文件的类名
第四个参数 执行的 action 名称 对应的是后台java代码中的action名称
第五个参数 传递的参数是一个数组
function helloworld(success,error,option){
cordova.exec(success, error, "HelloWorld", "echo", option);//option也可以使用[xxx,xxx],他是一个数组
}
$(document).ready(function(){
document.addEventListener("deviceready",onDeviceReady,false);
});
function onDeviceReady(){
helloworld(function(succ){
alert('成功'+succ);
},function(err){
alert('失败:'+err);
},['HelloMobileWorld','testWorld']);
}
function helloworld(success,error,option){
cordova.exec(success, error, "HelloWorld", "echo1", option);
}
二、注册插件
在Android :res/xml/ 这个目录下的配置文件下注册
<feature name="HelloWord">
<param name="android-package" value="org.apache.cordova.helloword.HelloWord"/>
</feature>
三、 设置权限(需要调用权限的地方设置权限)
<uses-permission android:name="android.permission.SEND_SMS" />
四、java 代码编写
1、创建一个包列如:com.example.phonegap.plugin
2、包里创建一个class 列如:HelloWorld
package com.example.phonegap.plugin; import org.apache.cordova.api.CallbackContext; import org.apache.cordova.api.CordovaPlugin;
import org.apache.cordova.api.PluginResult;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject; public class HelloWorld extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
if (action.equals("echo")) { //action=echo 这里对应的就是JavaScript端的第四个参数 ,如果跟里面的参数不一样是不会执行下面的代码的
String message = args.getString(0); //获取第五个参数 数组中的元素 HelloMobileWorld
this.echo(message, callbackContext);
return true;
}else{
callbackContext.error("这不是一个echo操作");
return false;
} }
private void echo(String message, CallbackContext callbackContext) {
if (message != null && message.length() > 0) {
callbackContext.success(message);
} else {
callbackContext.error("Expected one non-empty string argument.");
}
}
}
phoneGap的Android下编写phonegap 插件的更多相关文章
- phoneGap的Android下编写phonegap 发送短信插件
一.前端代码的编写 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...
- phonegap安卓环境下使用BarcodeScanner插件扫描二维码教程
由于一直在使用phoneGap来开发安卓应用,而对于原生Java小白的我最近这几天一直陷入了如何使用phonegap的BarcodeScanner插件这件事情上,可以说查遍了百度和Google,虽然只 ...
- 在Android平台下搭建PhoneGap开发环境--用HTML5开发游戏
一.在Android平台下搭建PhoneGap开发环境具体怎么搭建我这里就不详细说了,如有需要我后面再讲 . PhoneGap 官方地址有详细说明:http://www.phonegap.com. 在 ...
- Windows8下PhoneGap 4 + Android Studio 1.0 + VS2013配置指南
1.准备工作 安装JDK1.6+,设置环境变量 JAVA_HOME C:\Program Files\Java\jdk1.5.0_07 CLASSPATH .;%JAVA_HOME%\lib Path ...
- 使用jQuery Mobile + PhoneGap 开发Android应用程序(转)
使用jQuery Mobile + PhoneGap 开发Android应用程序(转) 一.简介 jQuery Mobile是jQuery在手机上和平板设备上的版本.jQuery Mobile 不仅给 ...
- 使用 Eclipse PhoneGap 构建 Android 应用程序入门
Eclipse 是一种支持多种技术的开源集成开发环境 (IDE),但本文重点介绍 Java 支持,这也是 Android 应用程序的“母语”.Android 是 Google 发布的开源移动操作系统. ...
- PhoneGap 在 Android 上的插件开发方法介绍
移动应用开发已经成为软件开发的一个重要方向,但是移动开发面临的一个重要问题就是跨平台的问题.PhoneGap 作为一个多平台的软件开发框架,提供了一次编写多个平台的运行.目前已经支持多达 6 个移动平 ...
- 转-MAC 下安装PHONEGAP开发环境
来自:http://jinzhe.net/post/8.html 什么是Phonegap呢?Phonegap是一个利用HTML5去开发App的框架.可以为安卓.iOS.WP.黑莓.火狐等移动操作系统. ...
- 基于Android SDK安装PhoneGap框架
下载zip文件PhoneGap 2.0.0 PhoneGap 2.0.0 Released 20 Jul 2012http://phonegap.com/download/ 解压缩后的目录结构:Dir ...
随机推荐
- 分析apache日志,统计访问量
cat nondomain_access_log.20090722 |awk '{print $1}'| sort | uniq -c |sort -nr
- Firebird Fluentdata
Fluentdata 支持很多种数据库驱动,但对Firebird不友好,不过可以使用DB2Provider来操作大部分功能, 例如: new DbContext().ConnectionString( ...
- [转]Entity Framework Fluent API - Configuring and Mapping Properties and Types
本文转自:https://msdn.microsoft.com/en-us/data/jj591617#1.2 When working with Entity Framework Code Firs ...
- 文档转换为pdf格式帮助类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Word = M ...
- 2017年12月17日 ASP.NET 12个表单元素&&简单控件/复合控件
12个表单元素可以分为三大类 第一类:文本类 <input type = "text" /> //普通文本框 <input type = "passwo ...
- Vue-[v-model]理解示例
对应文档节点: https://vuefe.cn/v2/guide/components.html#Customizing-Component-v-model <body> <div ...
- 二:SpringAOP
一:AOP 面向切面编程思想 横向重复,纵向抽取 |- filter中 |- 动态代理 |- interceptor中 二:动态代理 1.通过动态代理可以体现aop思想 2.对目标对象中的方法进行增强 ...
- int btn = (Button) findViewById(View.getId());
int btn = (Button) findViewById(View.getId());//这句话中的btn不能用来和按钮键Button的id号去比较 如果想存储Button,可以这样做: Sta ...
- 前端之body标签中相关标签(一)
一 字体标签 字体标签包含:h1~h6.<font>.<u>.<b>.<strong><em>.<sup>.<sub& ...
- angular之$on、$emit、$broadcast
1.$scope.$on view事件 //View被加载但是DOM树构建之前时: $scope.$on('$viewContentLoading', function(event, viewConf ...