2

iPhone ブラウザーで GWT モバイル・アプリをデバッグすることはできますか?

ブラウザー開発者プラグインをインストールできないことはわかっていますが、他に回避策はありますか?

4

4 に答える 4

1

ブラウザ開発者プラグインをインストールできないことを知っていますか??

はい。あなたは正しいです。いいえ。IDE でバイト コードをデバッグするには、GWT プラグインが必要です。

残念ながら、少なくとも私の知る限り、現時点では回避策はありません。

GWTデフォルトではコンパイラが難読化されたコードを生成するため、GWT によって生成された Javascript をデバッグする場合も非常に困難です。

Java スクリプトを試してみたい場合は、 コンパイラ オプションを参照してください。

于 2013-11-20T15:00:02.573 に答える
0

GWT Super Dev モードは、ブラウザ プラグインを必要としないため、Android モバイル デバイスで動作します。

スーパー開発モードのオンとオフを切り替えるブックマークレットをサポートする必要があります。お使いのブラウザでこれができない場合は、ブックマークレットをクリックする代わりに、独自の JavaScript を実行して、そのページでスーパー デベロッパー モードを有効にすることができます。

ブックマークレットのURLは次のようになります

javascript:%7B%20window.__gwt_bookmarklet_params%20%3D%20%7B'server_url'%3A'http%3A%2F%2F192.168.55.55%3A1234%2F'%7D%3B%20var%20s%20%3D%20document.createElement('script')%3B%20s.src%20%3D%20'http%3A%2F%2F192.168.1.5%3A9876%2Fdev_mode_on.js'%3B%20void(document.getElementsByTagName('head')%5B0%5D.appendChild(s))%3B%7D

これは本質的にエンコードされた JavaScript であり、このように URLDecoder を使用してデコードできます。それは次のようなものになります

javascript:
  { 
    window.__gwt_bookmarklet_params = 
      {'server_url':'http://192.168.55.55:1234/'}; 
    var s = document.createElement('script'); 
    s.src = 'http://192.168.1.5:9876/dev_mode_on.js'; 
    void(document.getElementsByTagName('head')[0].appendChild(s));
  }

ネイティブ Android アプリ内で GWT コードを実行する場合、そのような JavaScript はその loadUrl メソッドを使用してWebViewで実行でき、開発モードはアプリ内で直接開始されます。

そうしないと、何らかの方法でデバイスからそのような「javascript URL」にアクセスしようとする可能性があります。これは、iPhone などの非 Android デバイスでも機能する場合があります。

于 2013-12-30T08:41:44.193 に答える