外部のスクリプトをCordovaのapp htmlで読み込もうとしていますが、いくつかの問題に直面しています。アプリはオフラインですが、いくつかの特定のオンライン機能はこのスクリプトに依存しています。外部スクリプトを読み込むためのインターネット接続を待つ
<script src="https://sitename.com/something.js"></script>
を使用してスクリプトファイルをロードすると、デバイスがオンラインの場合は意図した通りに機能しますが、オフラインの場合はThe connection to the server was unsucessful error
と表示され、閉じます。
<script src="https://sitename.com/something.js" async defer></script>
を使用すると、デバイスがオフラインのときに機能しますが、スクリプトがロードされなかったため、アプリがフォアグラウンドになってオンラインになってこのスクリプトに依存するものがトリガーされると、
デバイスがオンラインで接続が正常に機能している場合は、something.js
を一度ロードします。これどうやってするの? JavaScript経由でスクリプトを読み込む方法はありますか?デバイスは、それがイベントをトリガオンラインになったときにインターネット接続を確認して OnlineJS
:
を再ロードされます。そのページの情報は面白く見えます。あなたは、ファイルがロードされているかどうかを検出するロジックの周りにこれをラップすることができます。そうでない場合は、その記事でその関数を使用できます。 私は彼のコードをテストしていません。 –
https://github.com/apache/cordova-plugin-network-informationのように、プラグインを使用して接続状態をテストできます。接続時にイベントを発行します。 – Jorg