步骤
1.创建一个类继承广播
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isAvailable()){
Toast.makeText(context, "当前网络可用", Toast.LENGTH_SHORT).show();
switch (networkInfo.getType()){
case ConnectivityManager.TYPE_WIFI:
Toast.makeText(context, "正在使用WiFi", Toast.LENGTH_SHORT).show();
break;
case ConnectivityManager.TYPE_MOBILE:
Toast.makeText(context, "正在使用移动数据", Toast.LENGTH_SHORT).show();
break;
}
}else {
Toast.makeText(context, "当前网络不可用!", Toast.LENGTH_SHORT).show();
}
}
}
2.在代码注册并调用
private void initBroadcastReceiver() {
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
MyReceiver myReceiver = new MyReceiver();
registerReceiver(myReceiver,intentFilter);
}
3.清单文件中注册
<receiver android:name=".MyReceiver"
android:exported="true"
android:enabled="true"
></receiver>