在使用Android连接网络的时候,并不是每次都能连接到网络,在这个时候,我们最好是在程序启动的时候对网络的状态进行一下判断,如果没有网络则进行即时提醒用户进行设置。
要判断网络状态,首先需要有相应的权限,下面为权限代码:
即允许访问网络状态:
< uses-permission android:name ="android.permission.ACCESS_NETWORK_STATE" ></ uses-permission >
下面为判断代码:
/**
* 获取当前手机的网络状态
*
* @return
*/
private boolean isNetworkConnected() {
ConnectivityManager manager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info = manager.getActiveNetworkInfo();
return (info != null && info.isConnected());
}
若网络未连接,则进行提示,并可以进入设置网络界面
/**
* 提示网络状态不可用,并进行设置
*/
private void showSetNetworkDialog() {
AlertDialog.Builder builder = new Builder(this);
builder.setTitle("设置网络");
builder.setMessage("网络错误,请检查网络状态");
builder.setCancelable(false);
builder.setPositiveButton("设置网络", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Intent intent = new Intent();
// 类名一定要包含包名(这种显示意图不是很好,因为不同的系统可能包名,类名都不同,因此最好采用隐式意图进行跳转)
// intent.setClassName("com.android.phone",
// "com.android.phone.MiuiMobileNetworkSettings");
Intent intent = new Intent();
intent.setAction(Settings.ACTION_DATA_ROAMING_SETTINGS);
//startActivity(intent);
startActivityForResult(intent,0); // 如果在设置完成后需要再次进行操作,可以重写操作代码,在这里不再重写
finish();
}
});
builder.setNegativeButton("取消", new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
builder.create().show();
}
关于从Android应用程序跳转到各个设置页面
在android SDK
文档中有这样一个类,android.provider.Settings
类提供android
系统各个页面的跳转常量:
使用实例例:
startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS)),即可跳到android手机网络设置页面。
如果要launch Mobile Networks Setting
页面按如下方法:
Intent intent=new Intent(Settings.ACTION_DATA_ROAMING_SETTINGS);
ComponentName cName = new ComponentName(“com.android.phone”,”com.android.phone.Settings”);
intent.setComponent(cName);
startActivity(intent);
Intent intent=new Intent(Settings.ACTION_DATA_ROAMING_SETTINGS);
ComponentName cName = new ComponentName(“com.android.phone”,”com.android.phone.Settings”);
intent.setComponent(cName);
startActivity(intent);
如果要进入Networks Operators
页面按如下方法:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName(“com.android.phone”, “com.android.phone.NetworkSetting”);
startActivity(intent);
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName(“com.android.phone”, “com.android.phone.NetworkSetting”);
startActivity(intent);
String
|
ACTION_ACCESSIBILITY_SETTINGS
辅助功能模块的显示设置。 |
Activity Action: Show settings for accessibility modules.
|
String
|
ACTION_ADD_ACCOUNT
显示屏幕上创建一个新帐户添加帐户。 |
Activity Action: Show add account screen for creating a new account.
|
String
|
ACTION_AIRPLANE_MODE_SETTINGS
显示设置,以允许进入/ 退出飞行模式。 |
Activity Action: Show settings to allow entering/exiting airplane mode.
|
String
|
ACTION_APN_SETTINGS
显示设置,以允许配 置的APN 。 |
Activity Action: Show settings to allow configuration of APNs.
|
String
|
ACTION_APPLICATION_DETAILS_SETTINGS
有关特定应用程序的详细信息的显示屏幕。 |
Activity Action: Show screen of details about a particular application.
|
String
|
ACTION_APPLICATION_DEVELOPMENT_SETTINGS
显示设置,以允许应用程序开发相关的设置配置 |
Activity Action: Show settings to allow configuration of application development-related settings.
|
String
|
ACTION_APPLICATION_SETTINGS
显示设置,以允许应用程序相关的设置配置 |
Activity Action: Show settings to allow configuration of application-related settings.
|
String
|
ACTION_BLUETOOTH_SETTINGS
显示设置,以允许蓝牙配置 |
Activity Action: Show settings to allow configuration of Bluetooth.
|
String
|
ACTION_DATA_ROAMING_SETTINGS
选择of2G/3G 显示设置 |
Activity Action: Show settings for selection of2G/3G.
|
String
|
ACTION_DATE_SETTINGS
显示日期和时间设置,以允许配 置 |
Activity Action: Show settings to allow configuration of date and time.
|
String
|
ACTION_DEVICE_INFO_SETTINGS
显示一般的设备信息设置(序列号,软件版本,电话号码,等) |
Activity Action: Show general device information settings (serial number, software version, phone number, etc.).
|
String
|
ACTION_DISPLAY_SETTINGS
显示设置,以允许配 置显示 |
Activity Action: Show settings to allow configuration of display.
|
String
|
ACTION_INPUT_METHOD_SETTINGS
特别配置的输入方法,允许用户启用输入法的显示设置 |
Activity Action: Show settings to configure input methods, in particular allowing the user to enable input methods.
|
String
|
ACTION_INPUT_METHOD_SUBTYPE_SETTINGS
显示设置来启用/ 禁用输入法亚型 |
Activity Action: Show settings to enable/disable input method subtypes.
|
String
|
ACTION_INTERNAL_STORAGE_SETTINGS
内部存储的显示设置 |
Activity Action: Show settings for internal storage.
|
String
|
ACTION_LOCALE_SETTINGS
显示设置,以允许配 置的语言环境 |
Activity Action: Show settings to allow configuration of locale.
|
String
|
ACTION_LOCATION_SOURCE_SETTINGS
显示设置,以允许当前位置源的配置 |
Activity Action: Show settings to allow configuration of current location sources.
|
String
|
ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS
显示设置来管理所有的应用程序 |
Activity Action: Show settings to manage all applications.
|
String
|
ACTION_MANAGE_APPLICATIONS_SETTINGS
显示设置来管理安装的应用程序 |
Activity Action: Show settings to manage installed applications.
|
String
|
ACTION_MEMORY_CARD_SETTINGS
显示设置为存储卡存储 |
Activity Action: Show settings for memory card storage.
|
String
|
ACTION_NETWORK_OPERATOR_SETTINGS
选择网络运营商的显示设置 |
Activity Action: Show settings for selecting the network operator.
|
String
|
ACTION_PRIVACY_SETTINGS
显示设置,以允许配 置隐私选项 |
Activity Action: Show settings to allow configuration of privacy options.
|
String
|
ACTION_QUICK_LAUNCH_SETTINGS
显示设置,以允许快速启动快捷键的配置 |
Activity Action: Show settings to allow configuration of quick launch shortcuts.
|
String
|
ACTION_SEARCH_SETTINGS
全局搜索显示设置 |
Activity Action: Show settings for global search.
|
String
|
ACTION_SECURITY_SETTINGS
显示设置,以允许配 置的安全性和位置隐私 |
Activity Action: Show settings to allow configuration of security and location privacy.
|
String
|
ACTION_SETTINGS
显示系统设置 |
Activity Action: Show system settings.
|
String
|
ACTION_SOUND_SETTINGS
显示设置,以允许配 置声音和音量 |
Activity Action: Show settings to allow configuration of sound and volume.
|
String
|
ACTION_SYNC_SETTINGS
显示设置,以允许配 置同步设置 |
Activity Action: Show settings to allow configuration of sync settings.
|
String
|
ACTION_USER_DICTIONARY_SETTINGS
显示设置来管理用户输入字典 |
Activity Action: Show settings to manage the user input dictionary.
|
String
|
ACTION_WIFI_IP_SETTINGS
显示设置,以允许配 置一个静态IP 地址的Wi – Fi |
Activity Action: Show settings to allow configuration of a static IP address for Wi-Fi.
|
String
|
ACTION_WIFI_SETTINGS
显示设置,以允许Wi – Fi 配置 |
Activity Action: Show settings to allow configuration of Wi-Fi.
|
String
|
ACTION_WIRELESS_SETTINGS
显示设置,以允许配 置,如Wi – Fi ,蓝牙和移动网络的无线控制 |
Activity Action: Show settings to allow configuration of wireless controls such as Wi-Fi, Bluetooth and Mobile networks.
|
String
|
AUTHORITY
|
|
String
|
EXTRA_AUTHORITIES 在推出活动的基础上给予的权力限制可选项。 |
Activity Extra: Limit available options in launched activity based on the given authority.
|
String
|
EXTRA_INPUT_METHOD_ID
|
|
参考:http://www.cnblogs.com/-cyb/articles/Android_forward_settings.html