最近忙于项目,都有一周时间没有写博客了,今天周末,忙里偷闲,写一个吧!
这次主要写的是判断你当前手机的移动网络是否打开,如果没有打开则提示并且引导用户打开移动网络。好多软件都有这个功能或者类似的功能(比如蓝牙,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文件中写东西,你可以自己写一个按钮进行测试,我自己测试完全通过。祝你顺利。