直接看顶部的通知栏就可以了,E、G是2g网H是3g网
一、判断网络连接是否可用,不可用跳转到设置界面
view sourceprint?
01.
@Override
02.
protected void onStart() {
03.
AlertDialog.Builder builder=new Builder(this);
04.
05.
//检查用户的网络情况
06.
ConnectivityManager cm=(ConnectivityManager) MainActivity.this.getSystemService(Context.CONNECTIVITY_SERVICE);
07.
//返回当前可用网络信息
08.
09.
NetworkInfo info=cm.getActiveNetworkInfo();
10.
if(info!=null&&info.isConnected()){
11.
Toast.makeText(MainActivity.this, "网络可用", 0).show();
12.
13.
}else{
14.
Toast.makeText(MainActivity.this, "网络不可用", 0).show();
15.
builder.setTitle("提醒");
16.
builder.setMessage("当前网络不可用,点击确定设置网络");
17.
builder.setPositiveButton("确定", new OnClickListener() {
18.
19.
@Override
20.
public void onClick(DialogInterface dialog, int which) {
21.
Intent intent=new Intent();
22.
intent.setClassName("com.android.settings", "com.android.settings.Settings");
23.
startActivity(intent);
24.
}
25.
}
26.
);
27.
builder.create().show();
28.
}
29.
30.
super.onStart();
31.
}
二、使用ConnectionChangeReceiver判断网络是否可用
view sourceprint?
01.
public class MainActivity extends Activity {
02.
private ConnectionChangeReceiver myReceiver;
03.
04.
@Override
05.
protected void onCreate(Bundle savedInstanceState) {
06.
super.onCreate(savedInstanceState);
07.
setContentView(R.layout.activity_main);
08.
//用广播判断
09.
myReceiver=new ConnectionChangeReceiver();
10.
this.registerReceiver(myReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
11.
}
12.
public class ConnectionChangeReceiver extends BroadcastReceiver
13.
{
14.
@Override
15.
public void onReceive(Context context, Intent intent) {
16.
ConnectivityManager connectivityManager = (ConnectivityManager)
17.
context.getSystemService(Context.CONNECTIVITY_SERVICE);
18.
NetworkInfo mobworkInfo = connectivityManager
19.
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
20.
NetworkInfo wifiworkInfo = connectivityManager
21.
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
22.
boolean IsNetConnected = mobworkInfo.isConnected();
23.
boolean IsWifiConnected = wifiworkInfo.isConnected();
24.
if(IsNetConnected || IsWifiConnected){
25.
System.out.println("网络打开");
26.
Log.e("wankai", "wankai");
27.
boolean isConnected = true;
28.
}else{
29.
boolean isConnected = false;
30.
System.out.println("网络关闭");
31.
Log.e("wankai2", "wangguan");
32.
}
33.
}
34.
}
35.
36.
37.
}
view sourceprint?
1.
三、判断GPS是否打开
view sourceprint?
1.
public static boolean isGpsEnabled(Context context) {
2.
LocationManager lm = ((LocationManager) context
3.
.getSystemService(Context.LOCATION_SERVICE));
4.
List
5.
return accessibleProviders != null && accessibleProviders.size() > 0;
6.
}
四、判断WIFI是否打开
view sourceprint?
01.
public static boolean isWifiEnabled(Context context) {
02.
ConnectivityManager mgrConn = (ConnectivityManager) context
03.
.getSystemService(Context.CONNECTIVITY_SERVICE);
04.
TelephonyManager mgrTel = (TelephonyManager) context
05.
.getSystemService(Context.TELEPHONY_SERVICE);
06.
return ((mgrConn.getActiveNetworkInfo() != null && mgrConn
07.
.getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel
08.
.getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);
09.
}
五、判断是否是3G网络
view sourceprint?
01.
public static boolean is3rd(Context context) {
02.
ConnectivityManager cm = (ConnectivityManager) context
03.
.getSystemService(Context.CONNECTIVITY_SERVICE);
04.
NetworkInfo networkINfo = cm.getActiveNetworkInfo();
05.
if (networkINfo != null
06.
&& networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {
07.
return true;
08.
}
09.
return false;
10.
}
六、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。
view sourceprint?
01.
public static boolean isWifi(Context context) {
02.
ConnectivityManager cm = (ConnectivityManager) context
03.
.getSystemService(Context.CONNECTIVITY_SERVICE);
04.
NetworkInfo networkINfo = cm.getActiveNetworkInfo();
05.
if (networkINfo != null
06.
&& networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {
07.
return true;
08.
}
09.
return false;
10.
}
转载