36

phonegap アプリをプログラムで再起動するにはどうすればよいですか? navigator.app.exitApp() で簡単にアプリを終了しましたが、すぐに再起動してほしいです。

これが必要な理由は、ユーザーが選択ボックス メニューからユーザー言語を選択した後に再起動する必要があるためです。i18n は、ユーザーが言語の選択を更新した直後に起動します。ただし、1 ページに 5 つのボタンがあり、別のページに 1 つの段落があります。これらの 5 つの項目は以前の言語のままです (また、何らかの理由で言語選択メニューのレイアウトが完全に破棄されます) が、アプリケーションを再起動すると、すべて正しい言語になります。i18n プロセスに非常に複雑な問題があるか、強制再起動でバックドアで解決できます。

タイ、ナッティ

4

3 に答える 3

48

私は以下を使用します:

location.reload(); 

私にとって御馳走になります。

ポール

于 2013-03-27T00:25:27.877 に答える
10

これを試して

navigator.app.loadUrl("file:///android_asset/www/index.html", {wait:2000, loadingDialog:"Wait,Loading App", loadUrlTimeoutValue: 60000});

バクリ

于 2014-01-18T17:22:19.250 に答える
9

これは iOS と Android で機能します (少なくとも 2016 プラットフォーム バージョンでは)。SPA アプリケーションでも機能します。

// keep startup url (in case your app is an SPA with html5 url routing)
var initialHref = window.location.href;

function restartApplication() {
  // Show splash screen (useful if your app takes time to load) 
  navigator.splashscreen.show();
  // Reload original app url (ie your index.html file)
  window.location = initialHref;
}
于 2016-06-15T13:48:26.467 に答える