0
我有一個使用Firebase實時數據庫的應用程序。如果未連接,此應用程序應顯示ProgressBar。我怎樣才能做到這一點?我用「.info/connected」試過了,但結果看起來很隨意。我需要檢查到在線數據庫的連接,而不是離線數據庫。 (基本上,我想禁用脫機功能,並顯示用戶是否處於離線狀態)Android Firebase檢查連接狀態?
我有一個使用Firebase實時數據庫的應用程序。如果未連接,此應用程序應顯示ProgressBar。我怎樣才能做到這一點?我用「.info/connected」試過了,但結果看起來很隨意。我需要檢查到在線數據庫的連接,而不是離線數據庫。 (基本上,我想禁用脫機功能,並顯示用戶是否處於離線狀態)Android Firebase檢查連接狀態?
var firebaseRef = new Firebase('http://INSTANCE.firebaseio.com');
firebaseRef.child('.info/connected').on('value', function(connectedSnap) {
if (connectedSnap.val() === true)
{
/* we're connected! */
}
else {
/* Give a custom Toast/Alert dialogue and exit the application */
}
});
您還可以添加此檢查
public static boolean isNetworkAvailable(Context con) {
try {
ConnectivityManager cm = (ConnectivityManager) con
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
return true;
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
然後在你的活動檢查該/片段
if (isNetworkAvailable)
{
//Do you task
}
else{
/*No internet so Give a custom Toast/Alert dialogue and exit the application */
}
請參考這個link欲瞭解更多信息
我曾嘗試過,如我所說。但即使當我關掉互聯網時,我仍然因此而「真實」。這就是我首先要問的原因。 –
請參閱我對互聯網的修訂答案檢查,如果它不可用,請給出正確的信息並退出您的應用程序 –