Apache Cordova 在Android Studio中使用心得

来源:互联网 发布:vb.net socket 多线程 编辑:程序博客网 时间:2024/05/18 20:37

1,Apache Cordova 环境搭建

参考:http://www.tuicool.com/articles/rimQjyU

Cordova是Node.js的一款第三方依赖包,并托管到 https://www.npmjs.com/中。通过npm下载即可:

$ npm install -g cordova

但是考虑到国内伟大的防火墙工程可能无法下载从http://www.npmjs.org/下载Cordova。幸运的是,国内有好几个镜像站点可以供我们使用,更新速度比较快的有淘宝镜像。具体下载方法如下:

(1)通过config命令:(临时指定镜像源)

$ npm config set registry https://registry.npm.taobao.org $ npm install -g cordova

2.命令行指定:(临时指定镜像源)

$ npm --registry https://registry.npm.taobao.org info underscore

3.编辑 ~/.npmrc,并加入如下内容:(永久指定数据源):

$ registry = https://registry.npm.taobao.org

国内镜像使用可参考: 电脑换源 npm 国内镜像 cnpm

下载Cordova后,通过以下命令可查看当前的Cordova版本:

$ cordova -v

升级Cordova的方法如下:

$ npm update -g cordova

2,创建并在Android studio中使用项目

使用cmd 控制台

指令示例:

 cordova create myApp com.myCompany.myApp myApp
 cd myApp
 cordova plugin add cordova-plugin-camera --save // 添加插件可以多个

如需要使用定位,可以安装百度定位插件 
cordova plugin add https://github.com/mrwutong/cordova-qdc-baidu-location.git --variable API_KEY="Your key"

注意:该百度定位插件使用的百度sdk比较老,需要自己去百度下载最新的api,并更新相关的lib库。

百度定位插件使用方法参考:

https://github.com/mrwutong/cordova-qdc-baidu-location

如下链接是对该插件做了微量调整将数据返回改为了json

https://github.com/liangzhenghui/cordova-qdc-baidu-location

在用到的js中调用即可得到位置信息。

// 进行定位baidu_location.getCurrentPosition(successCallback, failedCallback);
比如:
baidu_location.getCurrentPosition(function(location) {    if (location) {         alert("location" + location);         console.log('invoke baidu after data');         console.log(location);    } else {         console.log('baidu no data');    }    }, function() {    console.log('baidu error');}
);

// 添加Android平台
 cordova platform add android --save


至此cordova工程就创建完成。


3,用Android studio 导入工程 (谁让我已经习惯了它,打包调试都靠它)

参照官网的步骤:

官网介绍地址:http://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html

直接copy官网的内容,就不翻译了很好理解。

To open a Cordova for Android project in Android Studio:

  1. Launch Android Studio.

  2. Select Import Project (Eclipse ADT, Gradle, etc).

  3. Select the Android platform directory in your project (<your-project>/platforms/android).

  4. For the Gradle Sync question you can simply answer Yes.

Once it finishes importing, you should be able to build and run the app directly from Android Studio


需要注意的问题

1,导入Android studio后由于cordova 创建的工程默认用了最新的gradle版本,如果你的Android studio版本与之不一致。要么更新或者把版本号改为和你Android studio保持一致。否则运行会报错。

dependencies {    classpath 'com.android.tools.build:gradle:2.2.0'}
我的是2.1.3
dependencies {    classpath 'com.android.tools.build:gradle:2.1.3'}
2,修改了JS代码后需要clean工程在重新编译,否则代码不生效。


0 0