Crosswalk Integration Beta in Ionic CLI (v1.3.2)

okay i just found a workaround!
go to file “\platforms\android\src\org\crosswalk\engine\XWalkCordovaResourceClient.java” line 204.
just comment the return out and rebuild the app - thats all!

i’m not sure yet how to allow a url with the method “shouldAllowRequest()”, but the workaround is working fine for me.

2 Likes

it works for me too! nice work!

Hello guys ! I’ve followed the tutorial on ‘how to add crosswalk with ionic-cli’ and currently having an issue using crosswalk on my real device (however, the problem is not occurring in the browser)

  1. I ran ‘ionic browser add crosswalk’ (everything worked)
  2. I did an ‘ionic run android -l -c -s’
  3. Launching fine , I can see SplashScreen and then a blank/white page (nothing else, no assets loaded and no errors) on my device.

=> However, the app does run in the browser. I’ve checked my build in (platform/android/build/outputs) which is around 29.2MB (so crosswalk is added)

Console: (from ‘ionic run android -l -c -s’)

Installing app on device…
Launching application…
LAUNCH SUCCESS
cordova process is exiting => this appears in the console when I see this white/blank page

**Edit: Looks like it is an error from my app, I’ve tried on a clean ionic project and I don’t get this white page. I’ve tried to remove crosswalk and my app is running fine … so I still don’t know why I get this blank page using crosswalk. **

Ionic CLI Version: 1.3.19

Not working for me even modifying the .java file that @cyptus mentioned. Anyone knows the correct way to whitelist hosts?

This works for me too. It’s not the first “solution” that involves commenting out Ionic source code or that of its partners…Just happy it works again :slight_smile: thanks!

@bshen, are you positive that it’s an error in your app? I’ve been unable to get crosswalk + livereload working in ANY project…

An existing project of mine required <4.4 support, so of course CROSSWALK! Upon introducing Crosswalk, I was greeted with the white screen issue - which led me down the dangerous path of upgrades, directly using git sources for libs, etc (stupid and reckless of me when considering that the app works as designed otherwise)…

After continued failure getting Crosswalk+Livereload going in my existing project, I next went and spun up a new project using “ionic start CrosswalkTest tabs”… As you likely can imagine, I next did “cd CrosswalkTest”, “ionic browser add crosswalk@13.41.318.0” and then “ionic run -lcs android -t c89a76s8”… No splashscreen. No app… Just a whitescreen after the “cordova process is exiting” appears in my launching console… very much like you’ve described…

All apps work if I revert to the Android Browser…

I’ve said this in another topic, but I’ll say it here as well:

I figured it out! The problem is that in the latest Cordova, they’ve split out the whitelist functionality into its own plugin.

Simply run ionic plugin add https://github.com/apache/cordova-plugin-whitelist.git
and you’re good!

7 Likes

I don’t know you, @thebosz… And I admittedly feel a little odd about saying this… But here I go anyways… I love you, man… In the most platonic of ways… in this moment… I love you very, very much…

My development process can now resume its previously schedule programming after a 24hr+ delay while chasing this…

Thank you very, very much for repeating this golden nugget over here - I’ve searched every combination of terms and words that I could think of in researching this and never once did I come across your other mention of this whitelist split… Phew…

Thanks again!

1 Like

Hello,

I’m unable to build a combined apk, anyone else having trouble with this?
Have tried using the BUILD_MULTIPLE_ARCHS argument but without luck…

Thanks in advance!

There should be a real way to do this, but you can edit the gradle.properties file in /platforms/android and comment out the first line.

Thanks! That did the trick!

1 Like

Thanks, you saved my day :slight_smile: :slight_smile: :slight_smile:

In crosswalk docs, we have an manifest.json for settings:

Where I can find after adding crosswalk for my project?

Crosswalk also have an “Lite” version:

It’s possible to implement?
After some read, the feedback about this version is good, and also, it doesn’t increase the app size like normal crosswalk… It adds around 10mb, instead of 20mb.

Hello guys, i am building a basic app based on the tabs template. Untill a recent change my app wont build anymore. It runs successfully on ionic serve and serve --lab but when i build for android i am getting a -Xlint error that it uses or overrides a deprecated API (and it refers to the IonicKeyboard plugin. Basically what i spotted is that it changed from using ant to build it to gradle. I used this method in case it helped me and now it says “Current NDK support is deprecated”. Do you have any idea what it migh be?

Crosswalk Lite was added to the latest beta release:

For who wants to test

Crosswalk team has just annonced the release of a share moded : https://crosswalk-project.org/blog/crosswalk-14-beta.html > Can be interesting to avoid the size pitfall but it seems to be a little disturbing for the end user IMHO…


And what’s the point now for crosswalk integration: is it better to use Ionic CLI or Cordova 5 official support ?

Is crosswalk only for Webview or for the whole Android App? Like, I have a RSS reader, do I need crosswalk?

Folks, you might be delighted to hear that with the introduction in Cordova Android 4.0.0 of pluggable WebView support, you can now install crosswalk in your project just like any other plugin! Sweet :smile:

1 Like

Hey guys I’ve the same error despite I’m on the ionic CLI version 1.5.0

`FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ‘:dexDebug’.

com.android.ide.common.internal.LoggedErrorException: Failed to run command:
/Users/benjaminroullet/Library/Android/sdk/build-tools/22.0.1/dx --dex --no-optimize --output /Users/benjaminroullet/Documents/workspace/wingz-mobile/platforms/android/build/intermediates/dex/debug --input-list=/Users/benjaminroullet/Documents/workspace/wingz-mobile/platforms/android/build/intermediates/tmp/dex/debug/inputList.txt
Error Code:
2
Output:

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs;
	at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
	at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
	at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
	at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
	at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
	at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
	at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
	at com.android.dx.command.dexer.Main.run(Main.java:246)
	at com.android.dx.command.dexer.Main.main(Main.java:215)
	at com.android.dx.command.Main.main(Main.java:106)

Is anybody in the same case ?``