日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
PhoneGap,Cordova框架下Html5中JS調(diào)用Android原碼

按照我一慣得套路,我會先說一點(diǎn)廢話。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。所以下文中我來回的切換叫法,其實(shí)都是一個東西而已。下面言歸正傳,如何在PhoneGap或者Cordova框架下實(shí)現(xiàn)JS調(diào)用Android原生代碼?(這里就不再啰嗦如何在Android程序中集成PhoneGap了)

 1.在你的html5中config.js定義你的Plugin的名稱和方法。名為MyPlugin,有兩個插件:一個為自動更新(Update),一個為密碼鎖定(PassLock)

 
 
  1. var MyPlugin = { 
  2.              UpDate: function (success, fail, url) { 
  3.                
  4. return  PhoneGap.exec(function (args) { 
  5.              success(args); 
  6.            }, function (args) { 
  7.             fail(args); 
  8.           }, ‘UpDate’, ‘Update’, [url]); 
  9.        },       
  10.      PassLock: function (success, fail, url){ 
  11.         return  PhoneGap.exec(function (args) { 
  12.             success(args); 
  13.         }, function (args) { 
  14.             fail(args); 
  15.         }, ‘PassLock’, ‘PassLock’, [url]); 
  16.        
  17.      } 
  18. }; 

 2.在xml文件夾下的plugin里注冊你的Plugin.

 
 
  1.     
  2.  

3.自定義你的Plugin類和處理方法.(這里只貼出了自動更新插件的代碼,很簡單,只是作了一個跳轉(zhuǎn)

 
 
  1. ublic class UpdatePlugin extends Plugin { 
  2.       @Override 
  3.         
  4. public PluginResult execute(String arg0, JSONArray arg1, String arg2) { 
  5.         /* 
  6.        * 跳轉(zhuǎn)到UpdateActivity 
  7.        */ 
  8.       
  9.       Intent intent = new Intent(ctx.getContext(),UpdateActivity.class); 
  10.           ctx.startActivity(intent);   
  11.           String result = “跳轉(zhuǎn)至UpdateActivity”;  
  12.           PluginResult pluginResult = new PluginResult(Status.OK, result); 
  13.             
  14. return pluginResult; 
  15.          
  16.     } 

4.在你的JS中調(diào)用你的插件。

 
 
  1. //自動更新 
  2.     upDate: function () { 
  3.         //調(diào)用android原生的方法檢查并更新 
  4.        MyPlugin.UpDate(function(){},function(){},’這里是一個參數(shù),我這里不涉及參數(shù)的使用,所以隨便寫’); 
  5.     }, 
  6.     passLock: function(){ 
  7.       //調(diào)用android原生的方法進(jìn)行密碼鎖定有關(guān)操作 
  8.         MyPlugin.PassLock(function(){},function(){},’ 
  9. 這里是一個參數(shù),我這里不涉及參數(shù)的使用,所隨便寫 
  10. ‘); 
  11.     }, 

  5.測試,當(dāng)你點(diǎn)擊你的某個按鈕或者鏈接執(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

本文鏈接:http://my.oschina.net/u/1157906/blog/293177


本文名稱:PhoneGap,Cordova框架下Html5中JS調(diào)用Android原碼
文章轉(zhuǎn)載:http://www.5511xx.com/article/dhijidi.html