Crosswalk Integration Beta in Ionic CLI (v1.3.2)

On Win7 x64, I created a system variable (System Properties > Advanced tab > Environment Variables…) called BUILD_MULTIPLE_APKS=true
I also made another one BUILD_MULTIPLE_ARCHS=true
Now anytime I run build it makes 2 apks by default.

Hey all,

I pushed 1.3.3 today which has a ton of fixes and other features added in.

Most importantly were some Crosswalk changes. First off, due to underlying cordova android changes, the environment variable no longer applies.

By default, you will get two separate architecture builds (x86/arm7). If you have a device connected and run ionic run android, it will only build and run that architecture of the connected device or simulator.

You can now see what versions are available by running ionic browser list.

Unfortunately @malex, I haven’t finished the minification, post 4.4. releases, or tab completion for Windows/Linux yet, so that will have to hold off a while longer. I’d love any help you’d have to offer though!

Hope these changes help!

1 Like

Well… I can’t even install Crosswalk.

Fetching Android SDK API 19.1.0
Had an error fetching the Android SDK required for Crosswalk. (CLI v1.3.3)

I have API 19 installed and it seems that I am the only person seeing that error.

I have managed to install it on OSX but I am clueless about what to do on Ubuntu Cli.

OK updated and it’s working properly on my side.
Still the issue with the Splashscreen though

The splashscreen has now been fixed : Splashscreen on Android doesn't work (only showing white screen for 2 seconds)

3 Likes

Amazing thank you very much.

Now it worked i.e. after removing it
(cordova plugin rm org.apache.cordova.splashscreen)
and adding it again directly from the git repo
(cordova plugin add https://github.com/apache/cordova-plugin-splashscreen.git)
the splash screen is back.
Many thanks to @dkeane for the hint.

1 Like

Is anyone getting an error that the AndroidManifest.xml can not be found?

FAILURE: Build failed with an exception.

  • What went wrong:
    A problem occurred configuring root project ‘android’.

A problem occurred configuring project ‘:org.apache.cordova.engine.crosswalk:example754964-xwalk_core_library’.
java.io.FileNotFoundException: D:\intellij\projects\n_view\platforms\android\org.apache.cordova.engine.crosswalk\example754964-xwalk_core_library\AndroidManifest.xml (The system cannot find the file specified)

  • Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED

Total time: 2.852 secs

D:\intellij\projects\n_view\platforms\android\cordova\node_modules\q\q.js:126
throw e;
^
Error code 1 for command: cmd with args: /s /c “D:\intellij\projects\n_view\platforms\android\gradlew cdvBuildDebug -b D:\intellij\projects\n_view\platforms\android\build.gradle -PcdvBuildArch=arm -Dorg.gradle.daemon=true”
Error: D:\intellij\projects\n_view\platforms\android\cordova\run.bat: Command failed with exit code 8
at ChildProcess.whenDone (C:\Users\skassam\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:135:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:766:16)
at Process.ChildProcess._handle.onexit (child_process.js:833:5)

1 Like

Hi @jbavari1. I upgraded to 1.3.3 and crosswalk 10 (@10.39.235.15) because Google Play gave me a OpenSSL alert with the previous crosswalk version. You wrote that by now the two architectures (x86/arm7) should get built by default. But unfortunately I can only build one APK for both architectures. Setting BUILD_MULTIPLE_ARCHS=true which worked before doesn’t work anymore. Is there a chance to force building 2 separate APKs if the default isn’t working?

Hi. I upgraded to crosswalk@12.40.283.0 and ionic.Platform.exitApp(), navigator.app.exitApp() and navigator.device.exitApp() doesnt work anymore…

Do you have any errors with the android SDK update @astrocrack? Is it failing to find the android SDK tools to install or failing to find the android SDK?

Regarding the splash screen - im trying to work with the cordova team to push out the latest for the splashscreen plugin. Bear with us guys!

Thanks to @ronycohen and @dkeane for sharing the knowledge to fix it!

1 Like

Hey, Did you managee to get it working ?

Works perfectly for me, but I have one question:

Why is the crosswalk library rebuilt every time I run ionic run android?
(At least that’s what it looks like to me, it involves gradle, takes a long time and spams my console with things like :org.apache.cordova.engine.crosswalk:dubme-xwalk_core_library

Is there a way to make building faster?

For me its not splitting into 2 apks, but one big combined apk. At some point I was getting 2 apks, but then I upgraded several thins to fix other errors like splash screens and icons etc. So everything else is sorted now but my apk is not getting split into 2. I have tried recreating everything from scratch but no luck.

Yah for me also as @neffets said, its not producing 2 apks, just one big apk and the environment variable no longer applies. earlier it was producing 2.

Hey, did you manage to produce the 2 versions after jbavari’s update?

@jbavari1 has answer this question in other thread

After updating ionic cli to 1.3.3, if I run:

ionic platform add android

It adds the plugin org.apache.cordova.engine.crosswalk:

Running command: /home/steinn/Projects/xaskapp/hooks/after_platform_add/010_install_plugins.js /home/steinn/Projects/xaskapp
Installing "org.apache.cordova.engine.crosswalk" for android

If I just add crosswalk browser, and compiling after it, I got the error “missing AndroidManifest.xml”.
So I need to remove the plugin before I run ionic add browser crosswalk.
Then I add the browser, the plugin installs again and now I can build successfully.

Steps:

ionic platform add android
ionic plugins remove org.apache.cordova.engine.crosswalk
ionic browser add crosswalk
ionic build android

Someone else had the same problem?

i have the same problem… did you fix it?

I have the same error
did you fix itr?