怎样检查Android网络连接状态
- 为了访问网络我们需要 INTERNET 权限
- 为了检查网络状态我们需要 ACCESS_NETWORK_STATE 权限
AndroidManifest.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<? xml
= "1.0"
= "utf-8" ?> < manifest
= "http://schemas.android.com/apk/res/android" package = "com.example.detectinternetconnection" android:versionCode = "1" android:versionName = "1.0"
< uses-sdk
= "8"
< application android:icon = "@drawable/ic_launcher" android:label = "@string/app_name"
< activity android:name = ".AndroidDetectInternetConnectionActivity" android:label = "@string/app_name"
< intent-filter > < action
= "android.intent.action.MAIN"
< category
= "android.intent.category.LAUNCHER"
</ intent-filter > </ activity > </ application > <!-- < uses-permission
= "android.permission.INTERNET"
<!-- < uses-permission
= "android.permission.ACCESS_NETWORK_STATE"
</ manifest > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
package
import
import
import
public
private
public
this ._context } public
ConnectivityManager if
null ) { NetworkInfo[] if
null ) for
int
0 ; if
{ return
; } } return
; } } |
4.当你需要在你的应用中检查网络状态时调用isConnectingToInternet()函数,它会返回true或false。
1
2
3
|
ConnectionDetector new
Boolean // |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<? xml
= "1.0"
= "utf-8" ?> < RelativeLayout
= "http://schemas.android.com/apk/res/android" android:layout_width = "fill_parent" android:layout_height = "fill_parent" android:orientation = "vertical"
< TextView android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:text = "Detect
< Button
= "@+id/btn_check" android:layout_height = "wrap_content" android:layout_width = "wrap_content" android:text = "Check android:layout_centerInParent = "true" /> </ RelativeLayout > |
7.最后打开你的 MainActivity 文件并粘贴下面的代码。在下面的代码中我用一个 alert dialog 来显示预期的状态信息。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
package
import
import
import
import
import
import
import
public
extends
// Boolean false ; // ConnectionDetector @Override public
super .onCreate(savedInstanceState); setContentView(R.layout.main); Button // cd new
/** * * btnStatus.setOnClickListener( new
@Override public
// isInternetPresent // if
// // showAlertDialog(AndroidDetectInternetConnectionActivity. this , "Internet , "You , true ); } else
// // showAlertDialog(AndroidDetectInternetConnectionActivity. this , "No , "You , false ); } } }); } /** * * * * * * public
AlertDialog new
// alertDialog.setTitle(title); // alertDialog.setMessage(message); // alertDialog.setIcon((status) // alertDialog.setButton( "OK" , new
public
int
} }); // alertDialog.show(); } } |
运行并测试下你的程序吧!你将会得到类似下面的结果。
怎样检查Android网络连接状态的更多相关文章
- Android 网络连接状态的监控
有些应用需要连接网络,例如更新后台服务,刷新数据等,最通常的做法是定期联网,直接使用网上资源.缓存数据或执行一个下载任务来更新数据. 但是如果终端设备没有连接网络,或者网速较慢,就没必要执行这些任务. ...
- android 检查网络连接状态实现步骤
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...
- Silverlight项目笔记6:Linq求差集、交集&检查网络连接状态&重载构造函数复用窗口
1.使用Linq求差集.交集 使用场景: 需要从数据中心获得用户数据,并以此为标准,同步系统的用户信息,对系统中多余的用户进行删除操作,缺失的用户进行添加操作,对信息更新了的用户进行编辑操作更新. 所 ...
- Android 检测网络连接状态
Android连接网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置. 首先,要判断网络状态,需要有相应的权限,下面为权限代码(Androi ...
- Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面
随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. Android平台提供了ConnectivityManager 类,用 ...
- Android编程 获取网络连接状态 及调用网络配置界面
获取网络连接状态 随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. Android平台提供了ConnectivityMan ...
- Android编程获取网络连接状态及调用网络配置界面
获取网络连接状态 随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. Android平台提供了ConnectivityMan ...
- 【Android进阶】判断网络连接状态并自动界面跳转
用于判断软件打开时的网络连接状态,若无网络连接,提醒用户跳转到设置界面 /** * 设置在onStart()方法里面,可以在界面每次获得焦点的时候都进行检测 */ @Override protecte ...
- 用delphi检查网络连接状态3种方式
用delphi检查网络连接状态3种方式 用delphi检查网络连接状态 检测计算机是否联网比较简单的做法可以通过一个 Win32 Internet(WinInet) 函数 InternetCheckC ...
随机推荐
- Dev GridView 属性说明
说明 Options OptionsBehavior 视图的行为选项 AllowIncrementalSearch 允许用户通过输入想得到的列值来定位行 AllowPartialRedrawOnS ...
- ag-grid-vue 本地删除,不重新刷新数据
// 这是本地删除,不重新刷新数据 that.gridListOptions.api.updateRowData({ remove: [that.submitTransmitData] });
- Intro Of Myself
- C# string日期格式
百分数格式应该用“p”这个参数. 格式 原始 数据 结 果 "{0:P}" 0.40 40% 数字 {0:N2} 12.36 数字 {0:N0} 13 货币 {0:c2} $1 ...
- swift版本拼图游戏项目源码
现学现做的第一个swift版本拼图游戏demo 常规模式,对换模式任你选择, 用到了花瓣的API,各种萌妹子~
- codevs 1422 河城荷取
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 在幻想乡,河城荷取是擅长高科技工业的河童.荷取的得意之作除了光学迷彩外,还有 ...
- Jenkins执行sudo权限的设置
Jenkins系统中添加执行脚本的时候,有一些命令是需要sudo权限和来执行的,可以在root权限下添加一下Jenkins账号的权限 1.添加不需要密码可sudo执行指定命令的权限 cd /etc c ...
- Java文件编译与反编译:javac命令和javap命令
1.创建一个Test.java文件,并输入内容 public class Test{ private int m; public int inc(){ return m + 1; } } 2.使用ja ...
- Navicat连不上MySQL的解决办法
USE mysql; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '{your password}'; ...
- 时间函数datetime time
time模块 time翻译过来就是时间,有我们其实在之前编程的时候有用到过. #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time() 获取 ...