2011-05-09 133 views

回答

1

GWT是跨平台的,可以在基于WebKit的浏览器上工作,如iPhone和Android中的浏览器。 GWT Mobile WebKit,可能对你有很大的帮助。

然而,似乎有在Android的一些问题与Scrolling using GWT而它似乎是罚款,iPhone

5

如果你想开发原生Android应用(即用Java编写的),那么你不能使用GWT。 GWT是一个用于开发在浏览器中运行的应用程序的框架:您用Java编写应用程序,GWT将其编译为JavaScript,然后运行在浏览器中。

如果您想开发可在Android浏览器中工作的Web应用程序,那么您绝对可以使用GWT。最近为GWT添加了对触摸事件的原生支持,还有其他人正在开发小部件,例如http://code.google.com/p/gwt-touch/

+0

为什么不应该如果应用程序是混合?每个Android应用程序都可以有一个WebView,它本身就是一个Chrome浏览器!但混合方法的复杂性太多了IMO。 – WindRider 2015-03-26 14:22:04

3

GWT应用程序通过浏览器执行,但如果您想用相同的代码开发原生Android应用程序,请查看PlayN。这是相当有限,但由此产生的应用程序将在浏览器,Android,iOS和桌面上工作

+0

PlayN的+1。有用。 – Spiff 2012-05-18 14:53:47

0

如果你想开发可运行在浏览器和android(以及其他几个平台上)的应用程序,你可以使用playN

7

说GWT是为了创建在浏览器中运行的代码是不完全正确的。 GWT将Java翻译成Javascript,并包含对Web应用程序的ui支持和其他好处。有几个本地应用程序包装程序可以接受Javascript应用程序,并使其成为Android(或其他移动操作系统)的本地应用程序,并通过Javascript apis为设备访问提供额外的支持。通过在GWT和JavaScript应用程序的本地包装之间建立一个粘合层,您可以从GWT编程到本地应用程序提供完整的解决方案。

所以,你不能用GWT单独做到这一点,但如果你把GWT和其他一些库结合起来,那绝对有可能。

结账PhoneGap/Cordovam-gwtGWTMobileNextInterfaces建立在PhoneGap和GWT-Mobile之上。我相信还有更多,但这似乎是常见的解决方案。

1

下面这些都是从GWT应用

  1. 创建Android应用程序编译GWT项目的步骤。右键单击该项目,选择Google-> GWT编译并选择该项目。编译完成需要一些时间。新的东西是在GWT项目的战争目录中创建的
  2. 比创建新的Android项目让我们说GwtTest。
  3. 创建libs文件夹,如果没有自动生成并粘贴phonegap.jar(0.9.4或以上),我用的PhoneGap-1.2.0.jar
  4. 添加项目的构建路径
  5. 复制所有生成的jar文件从GWTProject/war目录到GwtTest/assets目录(gtwproject,WEB-INF,css和html文件)的东西
  6. 现在在android项目的MainActivity中,扩展了DroidGap而不是Activity。删除setContentView行并添加以下行:super.loadUrl(“file:///android_asset/index.html”);
  7. 在清单中。xml文件添加行权限: 使用权限android:name =“android.permission.INTERNET”
  8. 在res目录中创建xml文件夹,将cordova.xml和config.xml文件放入xml文件夹。现在你可以运行GwtTest作为Android应用程序。

记住apk会在android中运行时生成,apk的大小约为35mb。所以请确保您的Android设备具有足够的尺寸。

1

由于GWT是Java,很多代码都可以在Android上重用。但是,一些代码(如UI)不能。谷歌收件箱在android上重复使用其70%的gwt代码。 Look at this question too

相关问题