私はデータ駆動型の会議アプリを開発しており、Web サーバーから常に更新されます。永続化のためにローカルストレージにデータを保存していますが、アプリを初めてインストールして起動したときに、「インターネット接続がありません」というメッセージをポップアップ表示し、ポップアップのボタンをクリックするとアプリを閉じたいと考えています。ただし、インターネットがある場合はアプリをロードします。app.run 関数でこれを実行しましたが、機能しません。
var app = angular.module('starter', ['ionic', 'ionic-material', 'ngCordova']);
app.run(function ($ionicPlatform, $ionicPopup, $timeout) {
$ionicPlatform.ready(function () {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
//checking for internet connection on startup
if (window.Connection) {
if (navigator.connection.type === Connection.NONE) {
document.addEventListener("offline", function () {
$ionicPopup.confirm({
title: "Internet Disconected",
content: "Sorry, No internet connection now, please try again"
}).then(function (result) {
if (!result) {
$ionicPlatform.exitApp();
}
});
}, false);
}
}
});
});
アプリはメッセージをポップアップ表示しますが、いずれかのボタン (OK とキャンセル) をクリックすると、アプリは白い画面のままになります。アプリは終了しません。何が間違っているのかわかりません。エラーを修正するためのアドバイスとコード サンプルが必要です。