1

私のアプリには起動時に多くのバックエンドフェッチが含まれているため、私の sencha touch アプリはAndroid デバイスで「アプリケーションエラー:サーバーへの接続に失敗しました」というエラーに直面していました。

MyAppActivity.javaこれに対する一般的な修正は、次のように のタイムアウト間隔を長くすることです。

<preference name="load-url-timeout" value="60000" />

まあ、これは私の場合には当てはまりません。これにより、タイムアウト間隔中にアプリの UI がスタックし、そのような遅延は私のアプリでは評価されません。

私が試してうまくいった別の修正は、Phonegap コミュニティから提案された次の修正です。

PhoneGap のコミュニティによるサポート PhoneGap のビルド修正: サーバーへの接続に失敗しました

これが私がしたことです:

  • 現在の名前index.htmlを main.html に変更
  • 新しいindex.htmlを作成し、そこから呼び出さmain.htmlれます: ここに画像の説明を入力

これは正常に動作しますが、問題はAndroid の backbutton アクションでアプリが閉じられないこと です! 戻るボタンをクリックすると、更新のように、アプリが再びロードを開始します。つまり、呼び出しは new に戻りindex.htmlmain.htmlが再度呼び出されます。

これに対する修正はありますか?

4

1 に答える 1

1

MyAppActivity.java でこれを試してください

@Override
  public boolean onKeyDown(int keyCode, KeyEvent event) {
              if(keyCode==KeyEvent.KEYCODE_BACK){
                  moveTaskToBack(true);
              }
              return super.onKeyDown(keyCode, event);

編集:これにより、アプリがバックグラウンドにプッシュされます。アプリを終了したい場合は moveTaskToBack(true);finish();

于 2013-07-04T09:40:06.393 に答える