国内的安卓手机品牌众多,安卓操作系统碎片化也很严重,我们使用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. Android-Universal-Image-Loader三大组件DisplayImageOptions、ImageLoader、ImageLoaderConfiguration详解

    一.介绍 Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加载,缓存和显示.所以,如果你的程序里需要这个功能的话, ...

  2. [ACM_暴力][ACM_几何] ZOJ 1426 Counting Rectangles (水平竖直线段组成的矩形个数,暴力)

    Description We are given a figure consisting of only horizontal and vertical line segments. Our goal ...

  3. [stm32] USART USART1收发功能工程

    >_<!功能:PC端发送一个特定的字符:0x0d 0x0a,单片机则返回一句话,如图: >_<!知识: 1.复用功能I/O和调试配置(AFIO)  为了优化外设数目,可以把一些 ...

  4. 一道印象深刻的面试题:String参数传递问题

    今天小菜去北京某知名公司面试,做了公司的面试题,然后就是轻松的面试. 面试过程中,面试官让我讲讲其中一个题是怎么选的答案,代码大致内容如下: public class StringTest{ publ ...

  5. 《区块链:从入门到放弃》之obc安装步骤

    obc安装步骤 朋友们可能会好奇,厨师不研究菜谱怎么改研究兵法了,哈哈,我原本是app出身,最近被安排去预研区块链和比特币技术,2个月下来,颇有斩获.期间得到IBM的CC同学指导我一步一步安装obc的 ...

  6. https封装类,支持get/post请求

    所需jar:commons-logging-1.1.3.jar.httpclient-4.3.1.jar.httpcore-4.3.jar package com.onlyou.microfinanc ...

  7. linux tar order

    http://blog.csdn.net/imyang2007/article/details/7634470 把常用的tar解压命令总结下,当作备忘: tar -c: 建立压缩档案-x:解压-t:查 ...

  8. IIS7.5 发布程序后cookie丢失问题

    给客户部署网站程序时,发现网站的用户登录不了系统,就是跳转不到另外一个页面,一直保留在当前的页面.在本地的VS里面调试的时候是正常的,算在本地的IIS上发布了一下,测试也是这个问题. -------- ...

  9. 基于RequireJS和JQuery的模块化编程——常见问题解析

    由于js的代码逻辑越来越重,一个js文件可能会有上千行,十分不利于开发与维护.最近正在把逻辑很重的js拆分成模块,在一顿纠结是使用requirejs还是seajs的时候,最终还是偏向于requirej ...

  10. EntityFramework 4/5/6 中执行自定义SQL语句

    参考:http://www.cnblogs.com/chengxiaohui/articles/2092001.html 在EF4(.NET  4)中,我们有了全新的API:ObjectContext ...