次の関数の戻り値を確認し(オンラインの場合はtrue、そうでない場合はfalse)、目的に応じて出力を変更します。
private boolean haveNetworkConnection() {
boolean haveConnectedWifi = false;
boolean haveConnectedMobile = false;
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo[] netInfo = cm.getAllNetworkInfo();
for (NetworkInfo ni : netInfo) {
if (ni.getTypeName().equalsIgnoreCase("WIFI"))
if (ni.isConnected())
haveConnectedWifi = true;
if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
if (ni.isConnected())
haveConnectedMobile = true;
}
return haveConnectedWifi || haveConnectedMobile;
}
接続がない場合にポップアップまたはトーストを表示したい場合は、アクティビティにその機能を含めると、トーストを表示する次の操作を実行できます。
if(!haveNetworkConnection()){
Toast.makeText(this,"No internet connection",Toast.LENGTH_LONG).show();
}else{
//Do whatever you need if there IS connectivity
}
私はあなたに与えている機能を使うのが好きです(何ヶ月も前にどこからコピーしたのかわかりません)。それは私がwifiまたはモバイルインターネットを持っている場合にのみtrueを返す必要がある場合に簡単に変更できるので、Wi-Fi接続が利用可能な場合にのみ高解像度ビデオをダウンロードするインスタンス。