国内的安卓手机品牌众多,安卓操作系统碎片化也很严重,我们使用sencha touch 开发的应用不可避免的出现了各种无解的兼容性问题。

有时候我就在想,有没有既能支持cordova,又能让我们把Chromium内核打包到应用里面的平台呢?这样就不用担心兼容性了。

最近阿赛向我推荐了Crosswalk,满足了我的愿望,不过可惜的是,Crosswalk仅支持Android4.0+。并且这个是将Chromium内核打包到了应用中,所以安装包略大一些。

Crosswalk是基于Chromium内核打造的一个跨平台HTML5运行平台,具有良好的HTML5特性支持和性能优势,目前主要Android和Tizen两个平台。

Crosswalk可以与cordova集成使用,

Crosswalk的官方网站是:https://crosswalk-project.org/

在线帮助文档:https://crosswalk-project.org/#documentation

在这里我们讲crosswalk-cordova的使用,crosswalk-cordova顾名思义就是crosswalk集成了cordova

1.环境搭建(win环境)

  a.Python

    先下载Python,下载地址: http://www.python.org/downloads/

    安装到指定路径,例如F:\Python

    打开计算机属性——高级系统设置——环境变量

    配置环境变量

      变量: Path                添加值:F:\Python

    配置完成,接下来验证配置是否成功。

    双击运行——输入cmd——回车——输入Python——回车,如果出现一堆英文,如下图所示,即表示配置成功。

 

  b.java

    先下载JAVA,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

    安装到指定路径,例如F:\Java

    打开计算机属性——高级系统设置——环境变量(如上文)

    配置环境变量

      变量: JAVA_HOME          值: 安装路径:F:\Java\jdk1.6.0_10

      变量: Path                添加值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

      变量: CLASSPATH     添加值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

    配置完成,接下来验证配置是否成功。

    双击运行——输入cmd——回车——输入javac——回车,如果出现一堆英文,如下图所示,即表示配置成功。

 

  c.Apache Ant

    下载Apache ant,地址: http://ant.apache.org/bindownload.cgi

    解压到指定路径,例如F:\apache-ant

    打开计算机属性——高级系统设置——环境变量(如上文)

    配置环境变量

      变量: ANT_HOME          值: 你刚解压到的路径:F:\apache-ant

      变量: Path              添加值:%ANT_HOME%\bin

    配置完成,接下来验证配置是否成功。

    双击运行——输入cmd——回车——输入ant——回车。

如果没有指定build.xml就会输出:

         Buildfile: build.xml does not exist!         Build failed

       有指定会输出:

         BUILD SUCCESSFUL

  d.adt-eclipse

    下载adt-eclipse,地址http://developer.android.com/sdk/index.html(注:可能需要挂代理)

解压到指定路径,例如F:\adt-eclipse,运行SDK Manager.exe

安装下图所示文件即可满足我们的需求,其他的随意

因为谷歌有时候会被墙,所以在不能访问谷歌服务器时请修改hosts文件,参考:http://blog.csdn.net/chinaeran/article/details/10565055

    

    打开计算机属性——高级系统设置——环境变量(如上文)

    配置环境变量

      变量:       ANDROID_HOME          值:F:\adt-eclipse\sdk(以你安装目录为准,确认里面有tools和add-ons等多个文件夹)

      变量:       Path                      添加值:F:\adt-eclipse\sdk\tools

      用户变量: PATH                           值:%ANDROID_HOME%\platform-tools

    配置完成,接下来验证配置是否成功。

    双击运行——输入cmd——回车——输入adb——回车,如果出现一堆英文,如下图所示,即表示配置成功。

  e.node.js

    下载,地址http://nodejs.org/

直接安装即可

  f.git

安装node.js后,双击运行——输入cmd——回车——输入

           npm install -g git 即可安装,也可以参考http://blog.chinaunix.net/uid-25806493-id-3319781.html安装

  g.crosswalk-cordova

    下载,地址https://crosswalk-project.org/#documentation/downloads

选择Cordova Android (ARM) 7.36.154.13下载,如图

任意解压即可,如D:\ASPX\crosswalk-cordova

2.创建项目

  

a.双击运行——输入cmd——回车进入命令行工具中,

输入:cd /d D:\ASPX\crosswalk-cordova\bin(D:\ASPX\crosswalk-cordova就是之前我解压的目录)

注意:途中可能会报一个关于git的错误,翻译过来的意思是某个文件找不到,根据路径把对应的文件夹创建了就可以了。

b.创建项目:

输入:create D:\ASPX\HelloWorld org.crosswalkproject.sample HelloWorld (D:\ASPX\HelloWorld是项目路径 org.crosswalkproject.sample是包名  HelloWorld是项目名称)

c.添加cordova插件:

输入:cd /d D:\ASPX\HelloWorld\cordova (D:\ASPX\HelloWorld就是项目路径,在此输入version命令可以查看cordova版本号)

在这里我们需要用 plugman install --platform android --project . \ --plugin 插件地址 这个命令来添加插件,如添加摄像机插件

plugman install --platform android --project . \ --plugin https://git-wip-us.apache.org/repos/asf/cordova-plugin-camera.git#r0.2.5

具体插件对照表请在https://crosswalk-project.org/#wiki/Plugins-list-@-3.3.0-supported-by-crosswalk-cordova-android中查看

在sencha touch中,插件的使用和直接使用 cordova 一样

3.项目打包

    通过上述过程生成的项目就是一个完整的安卓项目了,直接用adt-eclipse导入即可。

     整个导入打包过程可以参考http://www.cnblogs.com/mlzs/p/3437445.html,基本没有什么变化,唯一的区别就是导入的项目中多了一个xwalk_core_library,如图所示

使用 crosswalk-cordova 打包sencha touch 项目,再也不用担心安卓兼容问题!的更多相关文章

  1. 性能测试loadrunner11工具再也不用担心浏览器兼容的问题了(目前试过的各版本浏览器都是成功的)

    工具:Loadrunner 11.0+Fiddler+浏览器(谷歌.火狐.IE等) 步骤一:查看抓包工具Fiddler对应的端口 1.打开Fiddler------工具------选项-----连接, ...

  2. 第四步 使用 adt-eclipse 打包 Cordova (3.0及其以上版本) + sencha touch 项目

    cordova最新中文api http://cordova.apache.org/docs/zh/3.1.0/ 1.将Cordova 生成的项目导入到adt-eclipse中,如下: 项目结构如下: ...

  3. sencha touch 入门系列 扩展篇之sencha touch 项目打包压缩

    经常有新手同学抱怨说sencha touch的项目加载速度为什么这么慢,经常要10秒左右的时间甚至更多, 大家都知道,sencha touch开发的项目中引用了大量的js文件,当我们打开项目时,st的 ...

  4. sencha touch 入门系列 (三)sencha touch 项目创建

    通过上一章节的学习,我们的开发环境已经配置好了,接下来我们开始创建第一个sencha touch的项目,网络上很多sencha touch的教程都是手动搭建项目的, 不过手动搭建的项目缺少一些senc ...

  5. 保姆级神器 Maven,再也不用担心项目构建搞崩了

    今天来给大家介绍一款项目构建神器--Maven,不仅能帮我们自动化构建,还能够抽象构建过程,提供构建任务实现:它跨平台,对外提供了一致的操作接口,这一切足以使它成为优秀的.流行的构建工具,从此以后,再 ...

  6. 教会舍友玩 Git (再也不用担心他的学习)

    舍友长大想当程序员,我和他爷爷奶奶都可高兴了,写他最喜欢的喜之郎牌Git文章,学完以后,再也不用担心舍友的学习了(狗头)哪里不会写哪里 ~~~ 一 先来聊一聊 太多东西属于,总在用,但是一直都没整理的 ...

  7. 妈妈再也不用担心我使用git了

    妈妈再也不用担心我使用git了 Dec 29, 2014 git git由于其灵活,速度快,离线工作等特点而倍受青睐,下面一步步来总结下git的基本命令和常用操作. 安装msysgit 下载地址:ms ...

  8. 妈妈再也不用担心别人问我是否真正用过redis了

    1. Memcache与Redis的区别 1.1. 存储方式不同 1.2. 数据支持类型 1.3. 使用底层模型不同 2. Redis支持的数据类型 3. Redis的回收策略 4. Redis小命令 ...

  9. 锋利的js之妈妈再也不用担心我找错钱了

    用js实现收银功能. <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <hea ...

随机推荐

  1. C++数组和指针

    <C++ Primer 4th>读书摘要 与 vector 类型相似,数组也可以保存某种类型的一组对象:而它们的区别在于,数组的长度是固定的.数组一经创建,就不允许添加新的元素.指针则可以 ...

  2. CLIQUE 聚类算法以及Java实现+多线程

    CLIQUE(Clustering In QUEst)是一种简单的基于网格的聚类方法,用于发现子空间中基于密度的簇.CLIQUE把每个维划分成不重叠的区间,从而把数据对象的整个嵌入空间划分成单元.它使 ...

  3. CentOS Minimal版最小化安装后VMware联网详解

    最近想搞个mailman邮件列表,又不想在我常用的CentOS 6.4上做实验,怕破坏了环境,于是就想装个试验机,又嫌它占空间太大,于是找了半天发现CentOS 6.0的minimal版本最适合了,装 ...

  4. MySQL group_concat 1024 大小

    1. GROUP_CONCAT有个最大长度的限制,超过最大长度就会被截断掉,你可以通过下面的语句获得: SELECT @@global.group_concat_max_len; show varia ...

  5. js运动:多div变宽、二级菜单

    定时器及运动函数. 多div变宽: <!-- Author: XiaoWen Create a file: 2016-12-13 09:36:30 Last modified: 2016-12- ...

  6. paip.gui控件form窗体的原理实现以及easyui的新建以及编辑实现

    paip.gui控件form窗体的原理实现以及easyui的新建以及编辑实现 //////新建 与编辑  var  EditForm=new Form_easyui();    if(row)     ...

  7. javaweb学习总结(二十)——JavaBean总结

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  8. php: zend server 安装及相关配置

    运行安装文件(ZendServer-CE-php-5.3.2-5.0.1-Windows_x86.exe)开始安装,选项请参照我的选择. 这里不做改动,维持默认选择即可 点击Browse按钮更改安装目 ...

  9. 最近碰到了一个病毒木马:virus.win32.ramnit.B

    由于 使用了 简单游 平台上的挂机工具: 番茄-自动人机对战免费版1217  ,使用了很久,头段时间家里电脑 360提示有病毒,本来我一直忽略的,但 我扫描了一下,大量的这个木马,于是 吧 简单游卸载 ...

  10. Python:如何显示进度条

    首先,推荐一个组件:progressive 效果如下: 进度条和一般的print区别在哪里呢? 答案就是print会输出一个\n,也就是换行符,这样光标移动到了下一行行首,接着输出,之前已经通过std ...