2011-05-09 17 views

Respuesta

1

GWT es multiplataforma y funciona en navegadores basados ​​en WebKit, como los de iPhone y Android. GWT Mobile WebKit, podría ser de gran ayuda para usted.

Sin embargo parece que hay algunos problemas con Scrolling using GWT en Android, si bien es parece estar bien en el iPhone

5

Si se quiere desarrollar Aplicaciones Android nativo (es decir, escrito en Java), entonces no se puede utilizar GWT. GWT es un marco para desarrollar aplicaciones que se ejecutan en un navegador: usted escribe su aplicación en Java y GWT la compilará en JavaScript, que luego se ejecutará en el navegador.

Si desea desarrollar aplicaciones web que funcionen en el navegador de Android, entonces definitivamente puede usar GWT. El soporte nativo para eventos táctiles se agregó recientemente a GWT y hay otros que están desarrollando widgets, p. http://code.google.com/p/gwt-touch/

+0

¿Por qué no si la aplicación es híbrida? ¡Cada aplicación de Android puede tener un WebView, que es un navegador Chrome en sí mismo! Pero las complicaciones con el enfoque híbrido son demasiado IMO. – WindRider

3

Las aplicaciones de GWT se ejecutan a través de un navegador, pero si desea desarrollar aplicaciones de Android nativas con el mismo código, eche un vistazo a PlayN. Es bastante limitado, pero la aplicación resultante funcionará en un navegador, Android, iOS y computadora de escritorio

+0

+1 para PlayN. Útil. – Spiff

0

si desea desarrollar la aplicación que se ejecutará en el navegador y Android (y algunas otras plataformas en el camino) puede usar playN

7

No es del todo correcto decir que GWT está destinado a crear código que se ejecuta en un navegador. GWT traduce Java a Javascript e incluye soporte ui y otras ventajas para aplicaciones web. Hay algunas envolturas de aplicaciones nativas que toman aplicaciones de JavaScript y las hacen nativas para Android (u otros sistemas operativos móviles) con soporte adicional para el acceso de dispositivos a través de las API de Javascript. Con una capa de pegamento entre GWT y un contenedor nativo para una aplicación de Javascript, tiene una solución completa desde la programación de GWT hasta la aplicación nativa.

Por lo tanto, no puede hacer esto solo con GWT, pero si combina GWT con otras bibliotecas, es absolutamente posible.

Pedido PhoneGap/Cordova y, o bien m-gwt o GWTMobile. NextInterfaces está construido sobre PhoneGap y GWT-Mobile. Estoy seguro de que hay más, pero esas parecen ser las soluciones comunes.

1

Aquí estos son los pasos para crear la aplicación para Android de la aplicación GWT

  1. compilar el proyecto GWT. Haga clic derecho sobre el proyecto, seleccione Google-> GWT compile y seleccione el proyecto. Tomará algún tiempo hasta que se compile. Las cosas nuevas se crean en el directorio war en ese proyecto GWT
  2. que crear un nuevo proyecto Android, digamos GwtTest.
  3. Crear carpeta libs si no generan automática y pegar el phonegap.jar (0.9.4 o superior), que utilizan PhoneGap-1.2.0.jar
  4. Añadir el archivo jar en el camino de construcción del proyecto
  5. Copiar todos generados cosas del directorio GWTProject/war al directorio GwtTest/assets (archivo gtwproject, WEB-INF, css y html)
  6. Ahora en la actividad principal del proyecto android, extiende DroidGap en lugar de Activity. Elimine la línea setContentView y agregue esta línea: super.loadUrl ("file: ///android_asset/index.html");
  7. En Manifiesto.archivo xml Añadir una línea de permisos de Internet: utiliza permiso-android: name =”android.permission.INTERNET”
  8. Crear carpeta XML en el directorio res, puesto cordova.xml y el archivo Config.xml en la carpeta xml. Ahora puede ejecutar GwtTest como aplicación de Android.

Recuerde el apk que se generará mientras se ejecute como androide, el tamaño de apk es de alrededor de 35 MB. Así que asegúrese de que su dispositivo Android tenga este tamaño suficiente.

1

Dado que GWT es Java, gran parte de tu código se puede reutilizar en Android. Sin embargo, algunos códigos como la IU no pueden. La bandeja de entrada de Google reutiliza el 70% de su código gwt en Android. Look at this question too

Cuestiones relacionadas