Since you should be able to build Chromium browser on any reasonably modern Linux distribution, can we assume that you should be able to build it onto Android ?
No, Android is not exactly a Linux distribution. It's based on a Linux kernel, but it doesn't include an X server nor other dependencies for building Chromium on Linux.
However the Android Browser is also based on WebKit and includes the V8 JavaScript engine.
You can now run Chrome on Android:
http://code.google.com/chrome/mobile/
It's only available on some countries and only on Android 4.0+.
Android doesn't have many of the same libs that you'd find in a modern Linux distribution, so I would suspect that it would take a lot of re-engineering to make it happen. Maybe it's possible, but I would be very surprised.
Yes. Actually it was the other way around. The Android web browser serve as startup for the google chrome browser
It is possible, there would be tons of restrictions.
According to this source ( sept 2008 )
Google co-founder, Sergey Brin revealed a few interesting tidbits about the Chrome/Android connection
So, that was actually initially planned, but haven't quite happened yet. The two team ( Android browser and Chrome ) are very busy getting their own product ready.
It may be developed eventually by the open source community, but don't hold your breath.
well you can run chrome on you android devices... and there should not be much problem with that
http://www.google.co.in/intl/en/chrome/browser/mobile/android.html
They are claiming about Chrome for Android devices :) Simple find for me.
About review following is that...
For Android 4.4 and above, there's a free and open-source app getChromium that installs/updates the Chromium browser on Android.
FULL DISCLOSURE: I put together getChromium as an open-source means of getting builds directly from Google's repository over here: https://commondatastorage.googleapis.com/chromium-browser-continuous/Android.
Related
I am making an application which gives support to webRTC for android & ios both for this I make a lot of R&D then I found an Ionic framework to support both platforms. you can see here/ionic. no doubt it is a powerful tool for us in nowadays. and for supporting webRTC I have used crosswalk. because internally ionic use phone`s browser means for android it uses Chrome and for ios ,safari but the issue was there: older version of Chrome did not support for webRTC and safari did not till now. so with crosswalk webView all thing is working fine means calls are getting connecting and user A and B can communicate utterly but I am facing an issue of apk size which is also mentioned # crosswalk issues tracker. I have done all possible ways to reduce the size of apk which is mentioned there - by generation two apks , but apk size is still more than 25 mb.
I found another way was to disable all instead of WebRTC -but I am not sure ,will it works or not / how to do that?
so can you please let me know how to solve this issue with the crosswalk. or is it possible or not ? if it is then how can I do this else please give me some references of plugins(webVisew) which supports webRTC.
thanks in advace.your help can save me thanks.
I have a Polymer web app. I need to deploy it to mobile Android and iOS devices.
I have my vulcanized dist directory after running gulp.
I have a hosted URL.
Question
Now what do I do? What steps do I need to take? (And where is the documentation?)
I tried using PhoneGap Build but encountered compatibility issues.
This SO answer pretty well documents that PhoneGap Build does not support Polymer at this time.
There is article written by Eric Bidelman on
Using Polymer in a WebView. How to setup Polymer in an Android WebView app.
Here is the link.
https://www.polymer-project.org/0.5/articles/webview.html
We have built an in-house mobile applications with Polymer and Cordova.
It generally works with android 4.4 onwards since WebView for android 4.4 onwards is based on the chromium project.
As for iOS 8.1 onwards, we thus far have not encountered any issue. Note that Polymer will not work on iOS7 & below.
Should you need more modern web API, you can include Crosswalk for Cordova.
Hope that helps.
That's me. I look further into that.
I talked to my friends in that group, they know of no such projects.
However, they did express that it was possible, IF the web library supported ECMA5 (the Javascript standard). I looked into it and found that potentially there is support
However, I do not have any evidence that this will or will not work. The best I can say is to try the following.
Build the library on a local machine (your PC) to make sure you understand it.
Build a Cordova/Phonegap Application with the new Crosswalk Webview Library.
Find a very simple Webcomponent you can test with. Something equivalent to "hello world".
Test
Please let me know how this works out.
Best of Luck,
Jesse
Can't say I've found good documentation on this apart from this tutorial on using Apache Cordova with Polymer (though this is Polymer 0.5):
https://blog.nraboy.com/2014/07/use-polymer-apache-cordova/
I've been successful (so far) in using Cordova to build my polymer app and it runs successfully in a browser and on Android (haven't tried iOS yet).
I put all of my html and css in the 'www' directory of my Cordova project and have had no issues with build.
For android the simplest approach would be to create a webView and load your url to it. This kills most of the compatibility issues.
As rendering engine of chrome and web-view are both webkit based, most of thing that runs in chrome,will run in webview as well.
For details
https://developer.android.com/reference/android/webkit/WebView.html
how to display progress while loading a url to webview in android?
Similar thing can be done at IOS as well..
iOS: WebView Loading a url
It will definitely going to increase your workload a bit, however it does give you presence in both app stores.
I want to develop a Meteor app that will be deployed for web and mobile app (Android & iOS). I will use Windows on my dev machine. I will use WebStorm as my IDE.
What are the easiest ways to get my app deployed into the app stores?
I want to minimise extra configuration effort and duplicate code.
=== Supporting info ===
Some possible solutions I've come across are:
nitrous.io - but costs money
Vagrant - but looks complicated
When I run >meteor install-sdk android I get This command is not yet available on Windows. since it's not supported.
I'm asking this questions in March 2015, when official Meteor for Windows is still a release candidate and there are no plans to for mobile support on Windows in the near future. (See: https://stackoverflow.com/a/27698104/1369798)
Buy a Mac.
As much I loathe, them, I got a bottom of the range Mac Mini. I discovered there are many aspects of Meteor that don't work on Windows. Another one is their testing framework, Velocity.
Testing? Who needs that... :/
I am using http://www.macincloud.com since a couple of days, you can pay per hour. Those remote desktoped Macs have almost everything pre-installed you need for developing (besides the actual meteor stuff).
Definitely not a good idea if you want to check weather your app runs smooth in the ios emulator. But good enough for building and deploying iOS & Android apps!
I am using Nitrous.io for anything not compatible with Meteor Windows. When you register you get enough credits to run a small VPS like the one you can have at Digital Ocean for 5$. You can also refer friends and do some other stuff to get extra credits.
They also have a great desktop tool to synchronize files between the Nitrous.io and your computer.
So, I think it is a good choice and definitely easier than the Vagrant option!
In December 2015, the situation is still the same. I had a hard time today deploying my Meteor app on Android. I wrote down my findings, I hope it helps you too. It's here: https://geekycarrot.blogspot.com/2015/12/deploying-meteor-app-on-android.html
In a nutshell: It is possible without buying a Mac, but you need a Linux operating system, at least in a virtual box. You need to install an Android SDK on the Linux system. Building the app from the Linux console is somewhat tricky, but it can be done by the steps I described. Deployment can be simplified to one click with a short Linux-side and a Windows-side script.
For our Android app, we would like to embed our own browser/rendering engine. The most likely candidate for this, is Webkit/Chromium. We are looking for something similar to WebView, essentially, but backed by a browser (version) that we control.
Background
Significant parts of our app consist of web page fragments embedded in the view (served by the app itself). We try to do this as transparently as possible (from a visual/user experience standpoint). So far, we have been using WebView for this and that works for the most part. Except when it doesn't.
Some phone vendors have unfortunately decided to tweak the standard Android browser here and there. In some cases, this breaks our app or makes the fact the we embed a web page more noticeable.
Our Idea
We'd like to have a component similar to WebView but where we control what version of Webkit/Chromium (or some other rendering engine) is being used. It wouldn't necessarily have to be the latest and greatest version. It is more important that we can get our app to work consistently across as many Android devices as possible.
So far
Our research so far has not turned up anything useful. We have found three dead attempts to port Webkit to NDK (the bare Webkit for Android port uses functionality not available in the NDK and thus not to app developers):
Webkit Android port by Company 100 (no updates for over two years)
mogo-browser (their last revision was to delete all source code)
NDK Webkit (officially abandoned by its author)
Looking on StackOverflow, we have also found a number of similar questions, most of which being solved by pointing to WebView (we already do that, and it's not good enough)
Webkit component for Android
Embed basic WebKit + V8 in my app
Embedding a newer version of WebKit with Android app
We are currently investigating whether Chromium for Android (or parts of it) can be turned into a library that our app could use. Has anyone else done this?
Update
After having a look at the chromeview project on GitHub (accepted answer), we decided that we'd rather wait for Google to release a Chrome-based WebView on future Android devices. The Chromium rendering engine turns out to be fairly large (~40MB), which doesn't leave much space for the actual app :(
pwnall/chromeview · GitHub
https://github.com/pwnall/chromeview
ChromeView works like Android's WebView, but is backed by the latest Chromium code.
You should all check out the Crosswalk project. Sponsored by Intel, and in active development. They pull the Chromium sources and promise to make all new Chromium features available in Crosswalk within 6 weeks.
Crosswalk is a web runtime for ambitious HTML5 applications. It provides all the features of a modern browser, combined with deep device integration and an API for adding native extensions. It is especially suited to mobile devices.
Crosswalk supports Android 4.0 and newer, on ARM and Intel architectures.
Within in one hour of finding this project, I had my Cordova/Phonegap app running on an Android phone with Crosswalk. I'm glad I don't have to adjust my Javascript code to respect the shortcomings of the (pre-4.4) android.webkit.WebView.
https://crosswalk-project.org
Without WebKit there is a GeckoView. Sure it adds over 20Mb of libs to the project.
Nowadays, GeckoView seems an alternative to consider
I tried to use lastest code version of Chromium to build a custom WebView and it's successful.
I will give my approach but not the source code here right now.
Eventually, the size of custom WebView library is about 30MB, quite big for some small app. But it's wonderful because can support perfectly from Android 4.0.
This below is my method:
fetch source code of chromium and build web_view_apk (AndroidWebView test shell) follow this instruction https://www.chromium.org/developers/how-tos/android-build-instructions
use apktool to decompile the apk file of Aw Shell above. https://ibotpeaches.github.io/Apktool/
create your project with res, lib folder as same as decompiled project.
Manifest file is located in /src/android_webview/test/src/org/chromium/shell
src folder: you find the classes in chromium project source code which are respective the files in smali folder of decompiled project.
I will update my code later, but you can try my guide now if don't want to wait.
I would consider Chrome custom tabs:
https://developer.chrome.com/multidevice/android/customtabs
I'm trying to repackage an Android app for Blackberry, as suggested here. The app has a native (NDK/JNI) library in it. When I try to build for the App World, I get several errors of the following kind:
uses-access-native:impact=5:com.myapp.MyClass
So on the face, it looks like NDK is not compatible with Blackberry, period. However, I could not find any official word on that. The list of known issues says that Google APIs are not supported, but not a word about NDK. What's the official line, please? Did anyone ever repackage an app with an NDK library?
There is a note here: https://bdsc.webapps.blackberry.com/android/apisupport
Under 'Unsupported Software Features'
•Apps that utilize native code bundled into their APK file
My understanding is that it's not possible to do this - as per the link paulkayuk posted, and also:
http://developer.blackberry.com/native/documentation/bb10/porting_from_android_ndk.html
However this story popped up in the news this morning:
http://www.engadget.com/2013/02/07/skype-blackberry-android/
which references:
https://support.skype.com/en/faq/FA10251/is-skype-available-for-blackberry-devices?frompage=search&q=blackberry&fromSearchFirstPage=false
which says:
If you have a new BlackBerry smartphone powered by the BlackBerry 10
platform, you will soon be able to download and run Skype on these
devices. We are working closely with BlackBerry to ensure the Skype
for Android app runs great in the BlackBerry 10 environment.
My understanding is that Skype on Android has a big native library accessed via NDK, so you presume for this port to have happened they are in the process of opening up a way for Android apps running on blackberry to access native code. ie. sit tight and watch this space :-)