I have just upgraded our application from ionic 2 to ionic 3.0.0 (the first release that has what I need)
All looks great until I test the app on my Android device. We are using crosswalk as we support Android 4.3.
The splash screen shows and the first page (login page) shows. This page functions but when I go to navigate to the next page I get this error:
12-14 11:08:47.860: E/chromium(5768): [ERROR:xwalk_autofill_client.cc(172)] Not implemented reached in virtual void xwalk::XWalkAutofillClient::OnFirstUserGestureObserved()
I am using crosswalk cordova plugin version 23 which is the last stable.
I have ionic cli version 2.2.1.
These errors are seen in the log when the application is starting
12-14 11:07:41.010: E/chromium(5768): [ERROR:xwalk_browser_context.cc(79)] Failed to read preference, error num: 0
12-14 11:07:41.080: E/dalvikvm(5768): Could not find class 'org.chromium.content.browser.FloatingWebActionModeCallback', referenced from method org.chromium.content.browser.ContentViewCore.startFloatingActionMode
Anyone any idea what I might have missed? Or does Ionic 3 not support crosswalk?
Yes it does, as Ionic doesn’t care at all.
Cordova only support Crosswalk up to a specific version - but that is not directly connected to any Ionic version.
So then the cordova version on Ionic 3.0 does not support crosswalk then is that what you mean?
Sorry I don’t see how I can fix this I need to upgrade from ionic 2 to ionic 3 with crosswalk so we can continue to support Android 4.3. Is this possible? Or should I just stick to 2? (which I don’t want to do really)
OK so then if you say that the Ionic to cordova version relationship does not matter then why does it fail when I upgrade Ionic?
I have not upgraded the cordova version and it all worked with Ionic 2.
This does not follow your explanation. The only upgrade changes I have made are the upgrade from 2 -> 3 as I have shown in the image. I have not upgraded the cordova version and now crosswalk fails.
I have only updated the ionic cli (as you suggested). The cordova version is not listed in the config.xml (just the plugins) but it is listed in the package.json. The cordova is the same in my master (ionic 2 code base) and the upgraded branch (for ionic 3).
Now the master fails with the same error. So the only common denominator, something that has changed, is the CLI and node (node was forced to upgrade when upgrading the CLI)
So now I am in a complete pickle as I cannot even build my ionic 3 branch!
I could not tell you. I would refer you to the writers of the CLI. Basically this was all good before I tried to upgrade from Ionic 2 to 3 (following the upgrade guide) and now nothing works.
Do you have Cordova installed locally?
What does cordova -v return?
Do you have a Cordova platform added to your project? Add one with ionic cordova platform add ....
What does ionic info return when run inside your project?
You mentioned this multiple times now. You can always go back to the previous version if you want to, then I can also stop writing here.