Closed hsdk123 closed 10 years ago
We've been kicking around this idea too, and I think adding it as an option in the CLI is a good idea.
@mlynch @somethingnew2-0
@hsdk123 I recently came across this project and it sounded like pretty much a fantastic idea to address the various issues that are affecting different android versions.
Would you please be so kind to write a post on the forum that explains to people who haven't been developing with Eclipse as to how to integrate it in an existing Ionic Cordova project? I think it would be tremendously helpful for myself and others to improve the quality of our Android builds.
@adamdbradley @CoenWarmer Great to know other people are having the same thoughts about Android. I'm currently fiddling around with the Intel project (crosswalk-cordova-android) since it seems to be releasing with an updated version of Chromium every 6 weeks.
If I manage to get it working with Ionic, I'll post something up in the forum - though if the Ionic team gets it in as an option in the cli and automates things, that would just be great.
:+1: Adding Crosswalk to the Cli
@somethingnew2-0 Excellent! I have been working on adding a Crosswalk build for pre-Kitkat Android to my project. Having it internally within the CLI will be excellent!
@somethingnew2-0 Hi, can you explain whats that? and some guide to use this new feature? because i'm really noob bout this
Thanks
Any updates about adding chromeview wrapping in the Cli?
I'm also interested to know if it has been integrated with the CLI.
+1
+1
+1
+1
+1 for God, I need this --
Hey everyone,
We are making this a priority. We are also looking to see if anyone is interested in joining the effort as a contractor to make it happen. If interested, send me an email (email is in profile). Thanks!
The Chrome-mobile-apps in version 0.2.1 uses already the Crosswalk webview by default for Android applications.
https://github.com/MobileChromeApps/mobile-chrome-apps/blob/master/RELEASENOTES.md
Moving feature requests from GH Issues to Trello. Please continue the discussion and vote for this and other issues that are important to you here: https://trello.com/c/bPYGyGp9/12-cordova-android-chromeview-usage
Any updates?
I have been doing this myself by following this guide: https://crosswalk-project.org/#documentation/cordova/migrate_an_application/migrate-using-command-line-tools
But the performance is not any better on my Galaxy Nexus running 4.3. Did I do something wrong?
Also I wonder if ionic has been updated to use crosswalk already.
Uhh, it would be so cool!
+10
Lol, I have moved to developing with Titanium instead of waiting for the chromeview. No stupid lag.
I wouldn't like to change my workflow just because of this. I am currently using CocoonJS WebView+ to package my finished app and gain all the speed improvements which only requires me to change "ionic build android" to "cocoonjs build android" to make the magic happen. But still I would very much prefer if it was included in the ionic CLI
In my view, forcing a chromeview is not the ideal solution. The lag, shouldn't be there in the first place. (I can't use collection-repeats; they always end up working weirdly)
I have used a forced chromeview with cocoonjs on my old galaxy nexus and the 'little' performance upgrade wasn't worth the rise in MB size. Ofcourse, I miss the rapid app development that I can achieve with Ionic but the resulting performance is not what I want.
Example: Having a long list of items (sayaround 700 items for my pokedex app); then tapping on one of the item to see pokemon details; Then hitting the back button to go back and experience lag which is unnecessary. I understand that it is repainting the whole thing but it's not worth it.
These are simple demands that Ionic doesn't meet for me. I don't just want to support androids >= Android kitkat.
I have written the same app using Titanium and there is no lag whatsoever, not even on Android Honeycomb. It's not a happy day when you've spent time developing your ionic app in your chrome browser and everything looks great to only watch the performance die when you actually run it on your device.(Nexus 5)
Hey Guys, I'm started building my project with Crosswalk, basically my app becomes a Chrome App, and the performance has improved a lot (depends in the device setup), the big deal is that on Android 4.4.4 the webview version is Chromium 33, and using Crosswalk my project run on Chromium 37 (just like magic)
The process is really simple, I'm using Cordova Chrome App, https://github.com/MobileChromeApps/mobile-chrome-apps npm install cca -g
My project doesn't have to change the structure, the only big difference is that I have to call my index.html
in a background.js
file, just like a chrome extension, CCA still have a lot to improve, but it works fine!
To create a project use cca create appName
To install a platform with plugins correctly I need to run:
cca platform ios
cordova plugins add pluginsName
cca platform ios # At this point, cca will include CCA plugins with my local plugins correctly
# And then
cca emulate ios
The improvement is most for Android 4.4.x only, previous version doesn't work and now my app has 23mb and two files to upload in playstore, iOS still using the UIWebView and the .ipa file size is the same than before CCA.
Here is some interesting questions about CCA https://github.com/MobileChromeApps/mobile-chrome-apps/blob/master/docs/faq.md
I hope this help someone.
:+1:
Hi Guys,
Look at this: http://www.appgyver.com/steroids2
Seems like Appgyver is giving us a chance of using Ionic and their packaging abilities (which seems to be chromeview for android - Crosswalk)
You can easily migrate your ionic/cordova app to crosswalk following official documentation: https://crosswalk-project.org/documentation/cordova/migrate_an_application.html
PS: Documentation contains simple CLI steps which works hassle free.
@felquis that solution looks good too...I will definitely try :+1: Google seems to be promoting hybrid app as chrome extension: https://www.youtube.com/watch?v=nU4lvgTrjFI
@felquis what do u mean by "The improvement is most for Android 4.4.x only, previous version doesn't work", Crosswalk and Chrome Apps for Mobile are supposed to support the entire range of 4.x
btw I currently try to make Ionic work inside CCA, it does load the base template that Ionic created but it encounter a problem of "Uncaught TypeError: Cannot read property 'Keyboard' of undefined" at app.js:14 I also wrote the steps to reproduce it and what I tried at http://stackoverflow.com/questions/26949456/running-ionic-at-cca-throw-cannot-read-property-keyboard-of-undefined-app
Did you encounter that problem? what did u do to solve it?
One issue I encountered is that CCA doesn't include plugins correctly, I'm not sure if I did something wrong but for now, I need to run these commands to CCA include my plugins correctly.
CCA platform add iOS Cordova plugin add pluginName (and others plugins you want) And then run CCA platform add iOS again.
In the final of the command platform add, CCA show a list of plugins added and you can check if ionic keyboard plugin is there.
I hope it help you. Em 15/11/2014 18:49, "Megalepozy" notifications@github.com escreveu:
@felquis https://github.com/felquis what do u mean by "The improvement is most for Android 4.4.x only, previous version doesn't work", Crosswalk and Chrome Apps for Mobile are supposed to support the entire range of 4.x
btw I currently try to make Ionic work inside CCA, it does load the base template that Ionic created but it encounter a problem of "Uncaught TypeError: Cannot read property 'Keyboard' of undefined" at app.js:14 I also wrote the steps to reproduce it and what I tried at http://stackoverflow.com/questions/26949456/running-ionic-at-cca-throw-cannot-read-property-keyboard-of-undefined-app
Did you encounter that problem? what did u do to solve it?
— Reply to this email directly or view it on GitHub https://github.com/driftyco/ionic/issues/1119#issuecomment-63192068.
Yeah I tried that solution already but with android instead of ios, didn't help... Honestly, I'm quite clueless...
@Megalepozy can you put your code on github? I'll clone it and try to build with CCA, any suggest I'll send you a pull request. It would be great :D
@Megalepozy Or if possible, can you try to install this repository? https://github.com/felquis/ionic-cca
It worked fine for me, hope it help you.
@felquis dude u r amazing, never saw someone so willing to help like u did now, thx a lot! I wrote (as u requested) an issue at the repository since I got some problems.
thx a lot again!
Thanks for the issue! This issue is being locked to prevent comments that are not relevant to the original issue. If this is still an issue with the latest version of Ionic, please create a new issue and ensure the template is fully filled out.
Due to Android WebView's limited functionality and random bugs, I've been releasing all my apps that target Android 2.3~4.3 (basically versions before 4.4) with Android ChromeView applied:
https://github.com/thedracle/cordova-android-chromeview
The ChromeView addition seems to add about 20mb to the application, but the speed enhancements and lack of bugs compared to WebView are so relaxing to have that I don't really mind the size increase.
I've been trying Ionic lately, and after just a couple of days, I'm already starting to port my previous apps for all the goodness it provides.
I was just thinking that the Ionic Cli might want to add an option to the Android platform to perhaps utilize cordova-android-chromeview, or perhaps work on some custom tooling to get a recent version of chromeview implemented for an ionic android project.
After going through a mass of customer complaints for an extended period due to occurring bugs from Android WebView, I know I'll continue to use android-chromeview or some other chromeview cordova implementation until the majority of my clients use Android 4.4.
This project by Intel might also be worth seeing: https://crosswalk-project.org/ https://github.com/crosswalk-project/crosswalk-cordova-android