关闭

[置顶] android studio 下 ionic cordova 中 使用 CrossWalk

标签: Android测试
1983人阅读 评论(0) 收藏 举报
分类:

Ionic ,cordova 中 测试 使用 CrossWalk

主要碰到的问题

1、        当然是懂得太少,cordova的插件技术不懂,低级错误找半天

2、        Ionic  Browser add CrossWalk 命令没有了 出错了 没法对比

3、        crosswalk未能成功加载,提示**cpu 架构**错误对话框

4、        运行在fragment中

下面是安装过程记录

安装cordova时要用到node.js的npm

1、安装node.js

2、安装cordova CLI

命令 npm install -g cordova                              

3、创建app

命令 cordova create first com.cycle.firstApp firstApp //first:目录,om.cycle.firstApp app包名,firstApp app名称

4、安装 android sdk ....

5、添加 android平台

命令 cd first;cordova platform add android/ios;

 

6、安装插件cordova-plugin-crosswalk-webview

 

地址 https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview

命令 cordova plugin add cordova-plugin-crosswalk-webview

主要为增加了如下类

platforms\android\src\org\crosswalk\engine\*

 

被调用

public classMainActivity extends CordovaActivity

{

    @Override

    public void onCreate(BundlesavedInstanceState)

    {

        super.onCreate(savedInstanceState);

        // Set by <contentsrc="index.html" /> in config.xml

        loadUrl(launchUrl);------->

    }

}

public classCordovaWebViewImpl implements CordovaWebView {

 

public staticCordovaWebViewEngine createEngine(Context context, CordovaPreferencespreferences) {

        String className =preferences.getString("webview",SystemWebViewEngine.class.getCanonicalName());

        try {

            Class<?> webViewClass =Class.forName(className);

            Constructor<?> constructor =webViewClass.getConstructor(Context.class, CordovaPreferences.class);

            return (CordovaWebViewEngine)constructor.newInstance(context, preferences);------>

        } catch (Exception e) {

            throw newRuntimeException("Failed to create webview. ", e);

        }

    }

 

}

----->res-->xml-->config.xml--><preferencename="webView"value="org.crosswalk.engine.XWalkWebViewEngine" />(crossswalk)

 

7、下载xwalk_core_library

/*repositories {

    maven {

       url'https://download.01.org/crosswalk/releases/crosswalk/android/maven2'

    }

}*/


dependencies {

compile'org.xwalk:xwalk_core_library:20.50.533.12'

   

}

如果想运行在fragment中

使用 如下https://github.com/rajivnarayana/CordovaFragmentscordova插件

就两个类 直接下载测试即可

至此 本人测试程序 crosswalk未能成功加载,提示**cpu 架构**错误对话框

继续查找资料

可能是apk太大了

下载

https://download.01.org/crosswalk/releases/crosswalk/android/stable/20.50.533.12/crosswalk-20.50.533.12.zip

在已有android studio工程中新建android library 模块

dependencies {

    compile project(':xwalk_core_library')

}


 

加入上面两幅图片中的 两个动态库和 一个jar包


 

以及资源文件


将该模块的依赖加入到app android 模块

 

最终 编译运行成功

把主要精力放在学习 ionic上去,环境搭建总是浪费 我们  这些 脑子不好使的人很多宝贵的生命啊!~~~~

 

 

 附上测试工程源码:https://github.com/githublqs/MyApplication

补充:(应该可行,未实测)

http://blog.csdn.net/itCatface/article/details/49799337


compile'org.xwalk:xwalk_core_library:20.50.533.12'

改为

compile'org.xwalk:xwalk_core_library:20.50.533.12-arm@aar'

meaven 20.50.533.12 版本 目录下 只有 crosswalk-20.50.533.12.aar (45M)
https://download.01.org/crosswalk/releases/crosswalk/android/stable/20.50.533.12/crosswalk-20.50.533.12.zip
一样都是打包了x86 和 arm的
但是 arm子目录下有 
crosswalk-webview-20.50.533.12-arm.zip23M)看来得在官网好好了解下

未见 20.50.533.12-arm@aar 的文件 子目录下
也都是.zip文件

可以针对针对ARM、X86分别引入对应的库文件

比 在已有android studio工程中新建android library 模块 更方便

等待网友告知此问题的原因:

Specifying aversion of Crosswalk 是不能用了吗??

http://blog.ionic.io/crosswalk-comes-to-ionic/

命令 ionic browseradd crosswalk

输出…

browser is not avalid task

Available tasks:

(use --help or-h for more info)

   start ..........  Starts a new Ionicproject in the specified PATH

 ….

   docs ...........  Opens up thedocumentation for Ionic


 

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:17982次
    • 积分:370
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论