JQuery Mobile+cordova構建一個Android項目,jquerycordova

來源:互聯網
上載者:User

JQuery Mobile+cordova構建一個Android項目,jquerycordova
1.安裝Android開發環境    Android開發環境的安裝,現在主要是由於不能訪問Google網站,在windows下在host檔案中添加一個對應的74.125.195.190 dl-ssl.google.com,dl-ssl.google.com對應的ip可能改變。用的時候搜尋最新的IP地址就行了。   然後用eclipse或者myeclipse更新網站資訊:https://dl-ssl.google.com/android/eclipse。   具體教程網上很多,我比較喜歡的是:http://jingyan.baidu.com/article/bea41d437a41b6b4c51be6c1.html2.安裝cordova   cordova是一個實現JavaScript和後台通訊(Android的Java)的架構,通過相應的cordova外掛程式,提供給Web前端調用移動平台底層功能API的能力。   cordova通過WebChromeClient攔截js的prompt的內容來實現前端js對後端程式功能的調用。   在最開始的時候,我只是下載了cordova的源碼,把相關java類(喜歡只加入源java類,沒有打成jar包,便於修改)和js加入android工程,但是需要一些系統外掛程式時,會很難處理,只好重新安裝cordova。  1).安裝node.js,去官網上下載安裝後,把安裝路徑加入path  2).安裝npm,如果是最新的node.js已經帶了npm了不用安裝,否則就要安裝一下  3)安裝cordova,這裡一定要注意你的android sdk版本,查看一下是多少,應為預設安裝最新的版本,而最新的版本需要的sdk版本很高,加入的cordova的java原始碼需要的類有很大不同。      a).安裝cordova            npm install -g cordova@3.6.0-0.2      b).建立一個cordova工程            cordova create hello com.example.hello HelloWorld      c).添加android平台           進入hello工程目錄           cordova platform add android      d).將相關內容加入myeclipse            hello\platforms\android\CordovaLib的java源類加入src中            hello\platforms\android\assets\www中內容加入assets/www中            hello\platforms\android\res\xml\config.xml中內容加入res/xml中      e).編寫MainActivity          public class MainActivity extends CordovaActivity {

              @Override

               public void onCreate(Bundle savedInstanceState) {                    super.onCreate(savedInstanceState);                    super.loadUrl("file:///android_asset/www/index.html");                }         }        f).授權             <uses-permission android:name="android.permission.CAMERA" />            <uses-permission android:name="android.permission.VIBRATE" />            <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />            <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />            <uses-permission android:name="android.permission.INTERNET" />            <uses-permission android:name="android.permission.RECEIVE_SMS" />            <uses-permission android:name="android.permission.RECORD_AUDIO" />            <uses-permission android:name="android.permission.RECORD_VIDEO"/>            <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />            <uses-permission android:name="android.permission.READ_CONTACTS" />            <uses-permission android:name="android.permission.WRITE_CONTACTS" />              <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />              <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />            <uses-permission android:name="android.permission.GET_ACCOUNTS" />            <uses-permission android:name="android.permission.BROADCAST_STICKY" />            <uses-permission android:name="android.permission.SEND_SMS" />        g).啟動程式,就能看見cordova首頁面了3.JQuery Mobile        JQuery Mobile是專門為移動平台建立一組UI架構。        特別注意的是,JQuery Mobile是用Ajax的方式載入所有HTML中的標記data-role="page"的DIV元素中,第一個HTML頁面一般都是完全載入,包括 HEAD 和BODY 都會被載入到DOM中,完成後便是連結到的其他頁面內容的載入。 第二個HTML頁面只有 BODY 中的內容會被以Ajax的方式載入到頭一個HTML的 DOM中。 並且第二HTML頁面的 BODY 中的內容也並非全部載入,而僅僅是其中的第一個帶data-role="page"屬性的DIV會被載入進去,其餘的東西則無緣進入頁面渲染        a).下載JQuery Mobile        b).將css、js、images裝入android工程4.第一個示範項目5.自訂外掛程式    下面這個外掛程式實現通過一個按鈕結束應用程式。    1).外掛程式定義        public class ExitPlugin extends CordovaPlugin{            private static final String EXIT = "exit";            @Override             public boolean execute(String action, JSONArray args, CallbackContext callbackContext) {                 if (EXIT.equals(action)) {                     System.exit(0);                 }                 return true;            }     }    2).xml配置         <feature name="Exit">              <param name="android-package" value="com.tomsnail.webtest.ExitPlugin"/>         </feature>    3).js定義        var Exit = {            exitSystem: function(){                     cordova.exec(function(data){ }, function(e){}, "Exit", "exit", [""]);            }        };     4).js調用        function exitSystem(){            Exit.exitSystem();        }        <a href="javascript:exitSystem();" class="ui-btn">退出</a>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.