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
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-->
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.zip (23M)看来得在官网好好了解下
未见 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