2011-05-09 109 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

相關問題