本篇文章給大家分享的是有關(guān)Cordova框架下Html5中JS調(diào)用Android原碼怎么寫,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)公司憑借在網(wǎng)站建設(shè)、網(wǎng)站推廣領(lǐng)域領(lǐng)先的技術(shù)能力和多年的行業(yè)經(jīng)驗,為客戶提供超值的營銷型網(wǎng)站建設(shè)服務(wù),我們始終認(rèn)為:好的營銷型網(wǎng)站就是好的業(yè)務(wù)員。我們已成功為企業(yè)單位、個人等客戶提供了成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù),以良好的商業(yè)信譽(yù),完善的服務(wù)及深厚的技術(shù)力量處于同行領(lǐng)先地位。
按照我一慣得套路,我會先說一點廢話。PhoneGap和Cordova什么關(guān)系?為什么有的地方叫Cordova而有的地方叫PhoneGap ?PhoneGap是一款HTML5平臺, 通過它,開發(fā)商可以使用HTML、CSS及JavaScript來開發(fā)本地移動應(yīng)用程序。因此,目前開發(fā)商可以只編寫一次應(yīng)用程序,然后在6個主要的移動 平臺和應(yīng)用程序商店(app store)里進(jìn)行發(fā)布,這些移動平臺和應(yīng)用程序商店包括:iOS、Android、BlackBerry、webOS、bada以及Symbian。 Apache Cordova是PhoneGap貢獻(xiàn)給Apache后的開源項目,是從PhoneGap中抽出的核心代碼,是驅(qū)動PhoneGap的核心引擎。大概意思 也就是說:Cordova是由PhoneGap發(fā)展而來的,現(xiàn)在的Cordova就是當(dāng)年的PhoneGap。所以下文中我來回的切換叫法,其實都是一個東西而已。下面言歸正傳,如何在PhoneGap或者Cordova框架下實現(xiàn)JS調(diào)用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類和處理方法.(這里只貼出了自動更新插件的代碼,很簡單,只是作了一個跳轉(zhuǎn)
ublic class UpdatePlugin extends Plugin { @Override public PluginResult execute(String arg0, JSONArray arg1, String arg2) { /* * 跳轉(zhuǎn)到UpdateActivity */ Intent intent = new Intent(ctx.getContext(),UpdateActivity.class); ctx.startActivity(intent); String result = “跳轉(zhuǎn)至UpdateActivity”; PluginResult pluginResult = new PluginResult(Status.OK, result); return pluginResult; } }
4.在你的JS中調(diào)用你的插件。
//自動更新 upDate: function () { //調(diào)用android原生的方法檢查并更新 MyPlugin.UpDate(function(){},function(){},’這里是一個參數(shù),我這里不涉及參數(shù)的使用,所以隨便寫’); }, passLock: function(){ //調(diào)用android原生的方法進(jìn)行密碼鎖定有關(guān)操作 MyPlugin.PassLock(function(){},function(){},’ 這里是一個參數(shù),我這里不涉及參數(shù)的使用,所隨便寫 ‘); },
5.測試,當(dāng)你點擊你的某個按鈕或者鏈接執(zhí)行你的update:function這個JS,然后在JS里調(diào)用了MyPlugin下的Update插件,這 個插件在config.js里被定義,在plugin.xml中被注冊,插件具體執(zhí)行的地方時UpdatePlugin里的execute()方法。執(zhí)行 完這個方法后,你就已經(jīng)調(diào)用了Android的原生代碼咯,當(dāng)然我這里是設(shè)置成了跳轉(zhuǎn)到另外一個Activity.
所需工具打包下載:http://pan.baidu.com/share/link?shareid=1636341858&uk=2937351404
以上就是Cordova框架下Html5中JS調(diào)用Android原碼怎么寫,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。