ACCESSJQuery Mobile+cordova构建一个Android项目

1.安装Android开发条件

   
Android开发环境之安装,现在重大是由于无能够看谷歌站点,在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.html

2.安装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>

相关文章