Cordova框架下Html5中JS调用Android原码怎么写
本篇文章给大家分享的是有关Cordova框架下Html5中JS调用Android原码怎么写,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
按照我一惯得套路,我会先说一点废话。PhoneGap和Cordova什么关系?为什么有的地方叫Cordova而有的地方叫PhoneGap ?PhoneGap是一款HTML5平台, 通过它,开发商可以使用HTML、CSS及JavaScript来开发本地移动应用程序。因此,目前开发商可以只编写一次应用程序,然后在6个主要的移动 平台和应用程序商店(app store)里进行发布,这些移动平台和应用程序商店包括:iOS、Android、BlackBerry、webOS、bada以及Symbian。 Apache Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。大概意思 也就是说:Cordova是由PhoneGap发展而来的,现在的Cordova就是当年的PhoneGap。所以下文中我来回的切换叫法,其实都是一个东西而已。下面言归正传,如何在PhoneGap或者Cordova框架下实现JS调用Android原生代码?(这里就不再啰嗦如何在Android程序中集成PhoneGap了)
1.在你的html5中config.js定义你的Plugin的名称和方法。名为MyPlugin,有两个插件:一个为自动更新(Update),一个为密码锁定(PassLock)
var MyPlugin = { UpDate: function (success, fail, url) { return PhoneGap.exec(function (args) { success(args); }, function (args) { fail(args); }, ‘UpDate’, ‘Update’, [url]); }, PassLock: function (success, fail, url){ return PhoneGap.exec(function (args) { success(args); }, function (args) { fail(args); }, ‘PassLock’, ‘PassLock’, [url]); } };
2.在xml文件夹下的plugin里注册你的Plugin.
3.自定义你的Plugin类和处理方法.(这里只贴出了自动更新插件的代码,很简单,只是作了一个跳转
ublic class UpdatePlugin extends Plugin { @Override public PluginResult execute(String arg0, JSONArray arg1, String arg2) { /* * 跳转到UpdateActivity */ Intent intent = new Intent(ctx.getContext(),UpdateActivity.class); ctx.startActivity(intent); String result = "跳转至UpdateActivity"; PluginResult pluginResult = new PluginResult(Status.OK, result); return pluginResult; } }
4.在你的JS中调用你的插件。
//自动更新 upDate: function () { //调用android原生的方法检查并更新 MyPlugin.UpDate(function(){},function(){},’这里是一个参数,我这里不涉及参数的使用,所以随便写’); }, passLock: function(){ //调用android原生的方法进行密码锁定有关操作 MyPlugin.PassLock(function(){},function(){},’ 这里是一个参数,我这里不涉及参数的使用,所随便写 ‘); },
5.测试,当你点击你的某个按钮或者链接执行你的update:function这个JS,然后在JS里调用了MyPlugin下的Update插件,这 个插件在config.js里被定义,在plugin.xml中被注册,插件具体执行的地方时UpdatePlugin里的execute()方法。执行 完这个方法后,你就已经调用了Android的原生代码咯,当然我这里是设置成了跳转到另外一个Activity.
所需工具打包下载:http://pan.baidu.com/share/link?shareid=1636341858&uk=2937351404
以上就是Cordova框架下Html5中JS调用Android原码怎么写,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。