標籤:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
- 在介面中,存在一個按鈕,單擊按鈕的情況下,判斷當前的網路連接狀態,分別在串連網路狀態和未串連網路狀態下,提示相關資訊。代碼如下:
public class MainActivity extends Activity {
private Button button;//對應的按鈕
private ConnectivityManager connetivityManager;//
private NotificationManager notificationManager;// 通知使用者網路狀況
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context contex, Intent intent) {
// TODO Auto-generated method stub
// 網路狀況
NetworkInfo mobileInfo = connetivityManager
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo wifiInfo = connetivityManager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
Notification.Builder builder = new Notification.Builder(
MainActivity.this);
builder.setContentTitle("提示資訊");
builder.setSmallIcon(R.drawable.ic_launcher);
if (!mobileInfo.isConnected() && !wifiInfo.isConnected()) {
builder.setContentText("網路狀態有異常");
} else {
builder.setContentText("網路正常");
}
notificationManager.notify(1001, builder.build());
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.mainactivity);
button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(broadcastReceiver, intentFilter);
connetivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
}
});
}
// 卸載廣播
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
if (broadcastReceiver != null) {
unregisterReceiver(broadcastReceiver);
}
}
}
Android判斷網路連接狀態