57 votes

Chrome intégré ou Webkit dans une application Android

Pour notre application Android, nous aimerions intégrer notre propre navigateur/moteur de rendu. Le candidat le plus probable pour ceci, est Webkit/Chrome. Nous sommes à la recherche de quelque chose de semblable à WebView, essentiellement, mais soutenu par un navigateur (version) qui nous contrôle.

Arrière-plan

Des parties importantes de notre application se composent de page web fragments incorporé dans la vue (servi par l'application elle-même). Nous essayons de faire cela de façon transparente que possible (à partir d'un visuel/expérience utilisateur point de vue). Jusqu'à présent, nous avons été à l'aide de WebView pour cela et qui fonctionne pour la plupart. Sauf quand ça ne marche pas.

Certaines de téléphone, les fournisseurs ont malheureusement décidé de modifier la norme navigateur Android ici et là. Dans certains cas, cela brise notre application, ou fait le fait le nous intégrer à une page web de plus en plus perceptibles.

Notre Idée

Nous aimerions avoir un composant semblable à WebView , mais où l'on contrôle ce que la version de Webkit/Chrome (ou un autre moteur de rendu) est utilisé. Il ne serait pas nécessairement être la dernière et meilleure version. Il est plus important que nous pouvons obtenir notre app pour travailler constamment à travers comme de nombreux appareils Android que possible.

Jusqu'à présent

Nos recherches jusqu'à présent n'a pas tourné quelque chose d'utile. Nous avons trouvé trois morts tente de port Webkit pour NDK (le nu-Webkit pour Android port utilise la fonctionnalité n'est pas disponible dans le NDK et donc de ne pas les développeurs d'applications):

La recherche sur StackOverflow, nous avons également trouvé un certain nombre de questions similaires, pour la plupart, être résolus par l'pointant vers WebView (nous avons déjà le faire, et il n'est pas assez bon)

Nous sommes en train de voir si Chrome pour Android (ou des parties) peut être transformée en une bibliothèque que notre application peut utiliser. Quelqu'un d'autre a fait cela?

Mise à jour

Après avoir un regard sur les chromeview projet sur GitHub (accepté réponse), nous avons décidé que nous préférons attendre que Google pour libérer un Chrome WebView sur les futurs appareils Android. Le Chrome moteur de rendu s'avère être assez importante (environ 40 MO), ce qui ne laisse pas beaucoup d'espace pour l'application réelle :(

13voto

Satoshi Deguchi Points 96

pwnall / chromeview · GitHub https://github.com/pwnall/chromeview

ChormeView fonctionne comme le WebView d'Android, mais est soutenu par le dernier code Chromium.

10voto

flo von der uni Points 184

Vous devriez vérifier la Concordance du projet. Sponsorisé par Intel et d'un développement actif. Ils tirent le Chrome sources et la promesse de rendre tous les nouveaux Chrome fonctionnalités disponibles dans le tableau de Concordance dans les 6 semaines.

Tableau de concordance est un runtime web pour des applications en HTML5. Il fournit toutes les fonctionnalités d'un navigateur moderne, combiné avec une profonde intégration du dispositif et une API pour l'ajout d'extensions natives. Il est particulièrement adapté aux appareils mobiles.

Tableau de concordance prend en charge Android 4.0 et versions plus récentes, sur les BRAS et les architectures Intel.

À l'intérieur de une heure de recherche de ce projet, j'ai eu mon Cordova/Phonegap application qui s'exécute sur un téléphone Android avec un passage pour piétons. Je suis content de ne pas avoir à régler mon code Javascript à respecter les lacunes de la (pré-4.4) android.webkit.WebView.

https://crosswalk-project.org

4voto

Gintas Points 31

Sans WebKit, il existe un GeckoView . Bien sûr, il ajoute plus de 20 Mo de bibliothèques au projet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X