android网络是否开启功能的实现

最近忙于项目,都有一周时间没有写博客了,今天周末,忙里偷闲,写一个吧!

这次主要写的是判断你当前手机的移动网络是否打开,如果没有打开则提示并且引导用户打开移动网络。好多软件都有这个功能或者类似的功能(比如蓝牙,GPS等),今天只说移动网络的,废话少说,直接上CODE。

 1 package com.example.network;
 2 
 3 import android.app.Activity;
 4 import android.app.AlertDialog;
 5 import android.content.Context;
 6 import android.content.DialogInterface;
 7 import android.content.Intent;
 8 import android.content.DialogInterface.OnClickListener;
 9 import android.net.ConnectivityManager;
10 import android.net.NetworkInfo;
11 import android.os.Bundle;
12 import android.provider.Settings;
13 import android.widget.Toast;
14 
15 public class MainActivity extends Activity {
16 
17     @Override
18     protected void onCreate(Bundle savedInstanceState) {
19         super.onCreate(savedInstanceState);
20         setContentView(R.layout.activity_main);
21         isNetworkAvailable(this);
22     }
23 
24     public static boolean isNetworkAvailable(final Context context) {
25         ConnectivityManager connectivity = (ConnectivityManager) context
26                 .getSystemService(Context.CONNECTIVITY_SERVICE);
27         if (connectivity != null) {
28             NetworkInfo info = connectivity.getActiveNetworkInfo();
29             if (info != null && info.isConnected()) {
30                 // 当前网络是连接的
31                 if (info.getState() == NetworkInfo.State.CONNECTED) {
32                     // 当前所连接的网络可用
33                     Toast.makeText(context, "可用", 1).show();
34                     return true;
35                 }
36             } else {
37 
38                 // 引导用户设置网络
39                 new AlertDialog.Builder(context)
40                         .setPositiveButton("网络设置", new OnClickListener() {
41 
42                             @Override
43                             public void onClick(DialogInterface dialog,
44                                     int which) {
45                                 // TODO Auto-generated method stub
46                                 Intent intent = new Intent(
47                                         Settings.ACTION_DATA_ROAMING_SETTINGS);
48                                 context.startActivity(intent);
49                             }
50                         }).setNegativeButton("取消", new OnClickListener() {
51 
52                             @Override
53                             public void onClick(DialogInterface dialog,
54                                     int which) {
55                                 // TODO Auto-generated method stub
56 
57                             }
58                         }).create().show();
59             }
60         }
61         return false;
62     }
63 }

没有在XML文件中写东西,你可以自己写一个按钮进行测试,我自己测试完全通过。祝你顺利。

原文地址:https://www.cnblogs.com/linzhichao86/p/3280450.html