Android-连接网络

1:首先先编写布局文件的代码:

 1 <TextView
 2         android:id="@+id/et1"
 3         android:layout_width="wrap_content"
 4         android:layout_height="wrap_content"
 5         android:text="@string/wang"
 6          />
 7
 8
 9     <Button
10         android:id="@+id/bt"
11         android:layout_below="@id/et1"
12         android:layout_centerHorizontal="true"
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:text="@string/but"
16         />

2;编写源文件代码:

 1 import android.app.Activity;
 2 import android.content.Context;
 3 import android.net.ConnectivityManager;
 4 import android.net.NetworkInfo;
 5 import android.os.Bundle;
 6 import android.view.View;
 7 import android.view.View.OnClickListener;
 8 import android.widget.Button;
 9 import android.widget.TextView;
10 public class MainActivity extends Activity {
11
12     private Context context;
13     private ConnectivityManager cm;
14
15     @Override
16     protected void onCreate(Bundle savedInstanceState) {
17         super.onCreate(savedInstanceState);
18         setContentView(R.layout.activity_main);
19         context = this;
20         //先找到控件。
21         Button bt = (Button) findViewById(R.id.bt);
22         bt.setOnClickListener(new OnClickListener() {
23
24             @Override
25             public void onClick(View v) {
26                 //获取Activity的当前对象。这样才能获取到一些参数。
27                 Activity c = (Activity)context;
28                 //定义一个获取字符串的资源文件的字段。
29                 String netstatus;
30                 //定义一个获取颜色资源文件的字段。
31                 int color;
32                 //获取到textview。
33                 TextView tv = (TextView) findViewById(R.id.et1);
34                 //获取到网络连接的管理者。
35                  cm = (ConnectivityManager)c.getSystemService(CONNECTIVITY_SERVICE);
36                 //获取网络的状态信息。
37                 NetworkInfo networkinfo = cm.getActiveNetworkInfo();
38                 //判断是否有网络。
39                 if(networkinfo==null){
40                     //提示没有网络。
41                     netstatus = c.getResources().getString(R.string.networdinfo0);
42                     color = c.getResources().getColor(R.color.red);
43                     //System.out.println(networkinfo.getDetailedState());
44                     //System.out.println(networkinfo.getReason());
45                 }else{
46                     //提示有网络的做法。
47                     netstatus = c.getResources().getString(R.string.networdinfo1);
48                     color = c.getResources().getColor(R.color.green);
49                     //System.out.println(networkinfo.getDetailedState());
50                 }
51
52                 //设置文本内容。
53                 tv.setText(netstatus);
54                 tv.setBackgroundColor(color);
55             }
56         });
57
58     }
59
60
61 }

3:很重要的一点是:要获取权限。如果没有获取到权限的话,直接不能获取到权限。资源文件是直接用句柄打点获取到的。

直接在AndroidManifest.xml文件中加入这两句代码。

//获取internet访问权限<uses-permission android:name="android.permission.INTERNET" android:maxSdkVersion="19"/>//允许程序访问有关GSM网络信息
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" android:maxSdkVersion="19"/>
    

字符串资源文件代码:

 1 <resources>
 2
 3     <string name="app_name">连接网络</string>
 4     <string name="hello_world">Hello world!</string>
 5     <string name="action_settings">Settings</string>
 6     <string name="networdinfo0">网络不正常</string>
 7     <string name="networdinfo1">网络正常</string>
 8     <string name="wang">网络测试</string>
 9     <string name="but">按钮</string>
10 </resources>

颜色资源文件代码:

  1 <?xml version="1.0" encoding="utf-8"?>
  2 <resources>
  3
  4     <color name="white">#FFFFFF</color>
  5  <!-- 白色 -->
  6     <color name="ivory">#FFFFF0</color>
  7  <!-- 象牙色 -->
  8     <color name="lightyellow">#FFFFE0</color>
  9  <!-- 亮黄色 -->
 10     <color name="yellow">#FFFF00</color>
 11  <!-- 黄色 -->
 12     <color name="snow">#FFFAFA</color>
 13  <!-- 雪白色 -->
 14     <color name="floralwhite">#FFFAF0</color>
 15  <!-- 花白色 -->
 16     <color name="lemonchiffon">#FFFACD</color>
 17  <!-- 柠檬绸色 -->
 18     <color name="cornsilk">#FFF8DC</color>
 19  <!-- 米绸色 -->
 20     <color name="seashell">#FFF5EE</color>
 21  <!-- 海贝色 -->
 22     <color name="lavenderblush">#FFF0F5</color>
 23  <!-- 淡紫红 -->
 24     <color name="papayawhip">#FFEFD5</color>
 25  <!-- 番木色 -->
 26     <color name="blanchedalmond">#FFEBCD</color>
 27  <!-- 白杏色 -->
 28     <color name="mistyrose">#FFE4E1</color>
 29  <!-- 浅玫瑰色 -->
 30     <color name="bisque">#FFE4C4</color>
 31  <!-- 桔黄色 -->
 32     <color name="moccasin">#FFE4B5</color>
 33  <!-- 鹿皮色 -->
 34     <color name="navajowhite">#FFDEAD</color>
 35  <!-- 纳瓦白 -->
 36     <color name="peachpuff">#FFDAB9</color>
 37  <!-- 桃色 -->
 38     <color name="gold">#FFD700</color>
 39  <!-- 金色 -->
 40     <color name="pink">#FFC0CB</color>
 41  <!-- 粉红色 -->
 42     <color name="lightpink">#FFB6C1</color>
 43  <!-- 亮粉红色 -->
 44     <color name="orange">#FFA500</color>
 45  <!-- 橙色 -->
 46     <color name="lightsalmon">#FFA07A</color>
 47  <!-- 亮肉色 -->
 48     <color name="darkorange">#FF8C00</color>
 49  <!-- 暗桔黄色 -->
 50     <color name="coral">#FF7F50</color>
 51  <!-- 珊瑚色 -->
 52     <color name="hotpink">#FF69B4</color>
 53  <!-- 热粉红色 -->
 54     <color name="tomato">#FF6347</color>
 55  <!-- 西红柿色 -->
 56     <color name="orangered">#FF4500</color>
 57  <!-- 红橙色 -->
 58     <color name="deeppink">#FF1493</color>
 59  <!-- 深粉红色 -->
 60     <color name="fuchsia">#FF00FF</color>
 61  <!-- 紫红色 -->
 62     <color name="magenta">#FF00FF</color>
 63  <!-- 红紫色 -->
 64     <color name="red">#FF0000</color>
 65  <!-- 红色 -->
 66     <color name="oldlace">#FDF5E6</color>
 67  <!-- 老花色 -->
 68     <color name="lightgoldenrodyellow">#FAFAD2</color>
 69  <!-- 亮金黄色 -->
 70     <color name="linen">#FAF0E6</color>
 71  <!-- 亚麻色 -->
 72     <color name="antiquewhite">#FAEBD7</color>
 73  <!-- 古董白 -->
 74     <color name="salmon">#FA8072</color>
 75  <!-- 鲜肉色 -->
 76     <color name="ghostwhite">#F8F8FF</color>
 77  <!-- 幽灵白 -->
 78     <color name="mintcream">#F5FFFA</color>
 79  <!-- 薄荷色 -->
 80     <color name="whitesmoke">#F5F5F5</color>
 81  <!-- 烟白色 -->
 82     <color name="beige">#F5F5DC</color>
 83  <!-- 米色 -->
 84     <color name="wheat">#F5DEB3</color>
 85  <!-- 浅黄色 -->
 86     <color name="sandybrown">#F4A460</color>
 87  <!-- 沙褐色 -->
 88     <color name="azure">#F0FFFF</color>
 89  <!-- 天蓝色 -->
 90     <color name="honeydew">#F0FFF0</color>
 91  <!-- 蜜色 -->
 92     <color name="aliceblue">#F0F8FF</color>
 93  <!-- 艾利斯兰 -->
 94     <color name="khaki">#F0E68C</color>
 95  <!-- 黄褐色 -->
 96     <color name="lightcoral">#F08080</color>
 97  <!-- 亮珊瑚色 -->
 98     <color name="palegoldenrod">#EEE8AA</color>
 99  <!-- 苍麒麟色 -->
100     <color name="violet">#EE82EE</color>
101  <!-- 紫罗兰色 -->
102     <color name="darksalmon">#E9967A</color>
103  <!-- 暗肉色 -->
104     <color name="lavender">#E6E6FA</color>
105  <!-- 淡紫色 -->
106     <color name="lightcyan">#E0FFFF</color>
107  <!-- 亮青色 -->
108     <color name="burlywood">#DEB887</color>
109  <!-- 实木色 -->
110     <color name="plum">#DDA0DD</color>
111  <!-- 洋李色 -->
112     <color name="gainsboro">#DCDCDC</color>
113  <!-- 淡灰色 -->
114     <color name="crimson">#DC143C</color>
115  <!-- 暗深红色 -->
116     <color name="palevioletred">#DB7093</color>
117  <!-- 苍紫罗兰色 -->
118     <color name="goldenrod">#DAA520</color>
119  <!-- 金麒麟色 -->
120     <color name="orchid">#DA70D6</color>
121  <!-- 淡紫色 -->
122     <color name="thistle">#D8BFD8</color>
123  <!-- 蓟色 -->
124     <color name="lightgray">#D3D3D3</color>
125  <!-- 亮灰色 -->
126     <color name="lightgrey">#D3D3D3</color>
127  <!-- 亮灰色 -->
128     <color name="tan">#D2B48C</color>
129  <!-- 茶色 -->
130     <color name="chocolate">#D2691E</color>
131  <!-- 巧可力色 -->
132     <color name="peru">#CD853F</color>
133  <!-- 秘鲁色 -->
134     <color name="indianred">#CD5C5C</color>
135  <!-- 印第安红 -->
136     <color name="mediumvioletred">#C71585</color>
137  <!-- 中紫罗兰色 -->
138     <color name="silver">#C0C0C0</color>
139  <!-- 银色 -->
140     <color name="darkkhaki">#BDB76B</color>
141  <!-- 暗黄褐色 -->
142     <color name="rosybrown">#BC8F8F</color>
143  <!-- 褐玫瑰红 -->
144     <color name="mediumorchid">#BA55D3</color>
145  <!-- 中粉紫色 -->
146     <color name="darkgoldenrod">#B8860B</color>
147  <!-- 暗金黄色 -->
148     <color name="firebrick">#B22222</color>
149  <!-- 火砖色 -->
150     <color name="powderblue">#B0E0E6</color>
151  <!-- 粉蓝色 -->
152     <color name="lightsteelblue">#B0C4DE</color>
153  <!-- 亮钢兰色 -->
154     <color name="paleturquoise">#AFEEEE</color>
155  <!-- 苍宝石绿 -->
156     <color name="greenyellow">#ADFF2F</color>
157  <!-- 黄绿色 -->
158     <color name="lightblue">#ADD8E6</color>
159  <!-- 亮蓝色 -->
160     <color name="darkgray">#A9A9A9</color>
161  <!-- 暗灰色 -->
162     <color name="darkgrey">#A9A9A9</color>
163  <!-- 暗灰色 -->
164     <color name="brown">#A52A2A</color>
165  <!-- 褐色 -->
166     <color name="sienna">#A0522D</color>
167  <!-- 赭色 -->
168     <color name="darkorchid">#9932CC</color>
169  <!-- 暗紫色 -->
170     <color name="palegreen">#98FB98</color>
171  <!-- 苍绿色 -->
172     <color name="darkviolet">#9400D3</color>
173  <!-- 暗紫罗兰色 -->
174     <color name="mediumpurple">#9370DB</color>
175  <!-- 中紫色 -->
176     <color name="lightgreen">#90EE90</color>
177  <!-- 亮绿色 -->
178     <color name="darkseagreen">#8FBC8F</color>
179  <!-- 暗海兰色 -->
180     <color name="saddlebrown">#8B4513</color>
181  <!-- 重褐色 -->
182     <color name="darkmagenta">#8B008B</color>
183  <!-- 暗洋红 -->
184     <color name="darkred">#8B0000</color>
185  <!-- 暗红色 -->
186     <color name="blueviolet">#8A2BE2</color>
187  <!-- 紫罗兰蓝色 -->
188     <color name="lightskyblue">#87CEFA</color>
189  <!-- 亮天蓝色 -->
190     <color name="skyblue">#87CEEB</color>
191  <!-- 天蓝色 -->
192     <color name="gray">#808080</color>
193  <!-- 灰色 -->
194     <color name="grey">#808080</color>
195  <!-- 灰色 -->
196     <color name="olive">#808000</color>
197  <!-- 橄榄色 -->
198     <color name="purple">#800080</color>
199  <!-- 紫色 -->
200     <color name="maroon">#800000</color>
201  <!-- 粟色 -->
202     <color name="aquamarine">#7FFFD4</color>
203  <!-- 碧绿色 -->
204     <color name="chartreuse">#7FFF00</color>
205  <!-- 黄绿色 -->
206     <color name="lawngreen">#7CFC00</color>
207  <!-- 草绿色 -->
208     <color name="mediumslateblue">#7B68EE</color>
209  <!-- 中暗蓝色 -->
210     <color name="lightslategray">#778899</color>
211  <!-- 亮蓝灰 -->
212     <color name="lightslategrey">#778899</color>
213  <!-- 亮蓝灰 -->
214     <color name="slategray">#708090</color>
215  <!-- 灰石色 -->
216     <color name="slategrey">#708090</color>
217  <!-- 灰石色 -->
218     <color name="olivedrab">#6B8E23</color>
219  <!-- 深绿褐色 -->
220     <color name="slateblue">#6A5ACD</color>
221  <!-- 石蓝色 -->
222     <color name="dimgray">#696969</color>
223  <!-- 暗灰色 -->
224     <color name="dimgrey">#696969</color>
225  <!-- 暗灰色 -->
226     <color name="mediumaquamarine">#66CDAA</color>
227  <!-- 中绿色 -->
228     <color name="cornflowerblue">#6495ED</color>
229  <!-- 菊兰色 -->
230     <color name="cadetblue">#5F9EA0</color>
231  <!-- 军兰色 -->
232     <color name="darkolivegreen">#556B2F</color>
233  <!-- 暗橄榄绿 -->
234     <color name="indigo">#4B0082</color>
235  <!-- 靛青色 -->
236     <color name="mediumturquoise">#48D1CC</color>
237  <!-- 中绿宝石 -->
238     <color name="darkslateblue">#483D8B</color>
239  <!-- 暗灰蓝色 -->
240     <color name="steelblue">#4682B4</color>
241  <!-- 钢兰色 -->
242     <color name="royalblue">#4169E1</color>
243  <!-- 皇家蓝 -->
244     <color name="turquoise">#40E0D0</color>
245  <!-- 青绿色 -->
246     <color name="mediumseagreen">#3CB371</color>
247  <!-- 中海蓝 -->
248     <color name="limegreen">#32CD32</color>
249  <!-- 橙绿色 -->
250     <color name="darkslategray">#2F4F4F</color>
251  <!-- 暗瓦灰色 -->
252     <color name="darkslategrey">#2F4F4F</color>
253  <!-- 暗瓦灰色 -->
254     <color name="seagreen">#2E8B57</color>
255  <!-- 海绿色 -->
256     <color name="forestgreen">#228B22</color>
257  <!-- 森林绿 -->
258     <color name="lightseagreen">#20B2AA</color>
259  <!-- 亮海蓝色 -->
260     <color name="dodgerblue">#1E90FF</color>
261  <!-- 闪兰色 -->
262     <color name="midnightblue">#191970</color>
263  <!-- 中灰兰色 -->
264     <color name="aqua">#00FFFF</color>
265  <!-- 浅绿色 -->
266     <color name="cyan">#00FFFF</color>
267  <!-- 青色 -->
268     <color name="springgreen">#00FF7F</color>
269  <!-- 春绿色 -->
270     <color name="lime">#00FF00</color>
271  <!-- 酸橙色 -->
272     <color name="mediumspringgreen">#00FA9A</color>
273  <!-- 中春绿色 -->
274     <color name="darkturquoise">#00CED1</color>
275  <!-- 暗宝石绿 -->
276     <color name="deepskyblue">#00BFFF</color>
277  <!-- 深天蓝色 -->
278     <color name="darkcyan">#008B8B</color>
279  <!-- 暗青色 -->
280     <color name="teal">#008080</color>
281  <!-- 水鸭色 -->
282     <color name="green">#008000</color>
283  <!-- 绿色 -->
284     <color name="darkgreen">#006400</color>
285  <!-- 暗绿色 -->
286     <color name="blue">#0000FF</color>
287  <!-- 蓝色 -->
288     <color name="mediumblue">#0000CD</color>
289  <!-- 中兰色 -->
290     <color name="darkblue">#00008B</color>
291  <!-- 暗蓝色 -->
292     <color name="navy">#000080</color>
293  <!-- 海军色 -->
294     <color name="black">#000000</color>
295  <!-- 黑色 -->
296
297 </resources>
时间: 2024-11-13 20:24:28

Android-连接网络的相关文章

Android连接网络异常:android.os.NetworkOnMainThreadException

package com.ccl.getimage; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android

android 连接网络的简单实例

1.android有两种连接网络的类HttpURLConnect和HttpClient,但是HttpClient已逐渐被HttpURLConnect类代替所以就不提及. 2.实例 String address = "http://www.baidu.com"; URL url = new URL(address);//将String类型转化成URL类型 HttpURLConnect con = (HttpURLConnect)url.openConnection();//创建一个指向要

Android判断网络连接状态

需要相关权限 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name="android.permission.INTERNET"/

Android 检测网络连接状态

Android APP需要连接网络的时候,并不是每次都能连接到网络,因此需要在程序对当前设备的网络状态进行检测,以便及时对用户进行提醒. 判断网络状态,需要有相应的权限,权限代码如下(AndroidManifest.xml): <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.perm

android.os.NetworkOnMainThreadException 在4.0之后谷歌强制要求连接网络不能在主线程进行访问

谷歌在4.0系统以后就禁止在主线程中进行网络访问了,原因是: 主线程是负责UI的响应,如果在主线程进行网络访问,超过5秒的话就会引发强制关闭, 所以这种耗时的操作不能放在主线程里.放在子线程里,而子线程里是不能对主线程的UI进行改变的, 因此就引出了Handler,主线程里定义Handler,子线程里使用. 消息机制的写法 [1] anr Application not response 应用无响应 主线程(UI线程) [2] 如果在主线程中进行了耗时的操作 (比如连接网络 拷贝大的数据) Th

在Android开发中如何判读当前设备是否连接网络

1:前言: 我们在Android开发的过程中,很多实现是要向远程服务器拿数据的,但是未必当前设备一定连接了网络啊,那么此时我们就是要进行判断的了, 如果是有网络的话,那么此时就去向远程服务器去拿数据,如果是没有网络的话,给用户一个小小的温馨提示,同时为了用户的体验感友好,没有网络的 时候可以向本地的SQLite的数据库区拿数据.(等到有网的时候,SQLite数据库的数据需要马上的更新). 现在我们开始进行演示如何判断当前设备是否连接网络. 2:New 一个安卓Android项目 默认的Activ

Android使用Google推荐的联网框架Volley,让连接网络更加简单

大家好,随着技术的进步,科技的发达,很少有应用是单机的了,大部分都需要联网访问服务器,以前我们都用 httpclient和httpurlconnection,感觉是不是非常麻烦,而Google特别为开发者考虑,推出了Volley,从此妈妈再也不担心我的联网问题了,哪里联不上联哪里,Volley让联网更容易和更快,并且Volley请求会异步执行,不阻挡主线程联网请求无非就是Get或者Post,我们很少用到DELETE这个请求方式,说了这么多废话,下面让我们看看Volley到底能干啥.它真的有这么神

android检测网络连接状态示例讲解

网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置 Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(AndroidManifest.xml): 复制代码 代码如下: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="a

【 Android官方文档读书笔记】连接网络

网络连接时应用的最基本的功能之一,Android系统对网络连接进行了封装,使得开发者能够更快的给应用增加网络功能.大多数网络连接的Android应用使用HTTP发送和接受数据,Android包括两个HTTP客户端:HttpURLConnection和Apache HttpClient.开发者可以使用这两个客户端中的任意一个去完成网络连接. 1, 网络连接的基本步骤: (1)增加权限:manifest文件中必须包含以下权限 <uses-permission android:name="and

android 判断网络连接、sim卡信息以及ping操作是否网络连接正常

  //判断是否为wifi连接     public boolean isWifiConnected(Context context) {         if (context != null) {             ConnectivityManager mConnectivityManager = (ConnectivityManager) context                     .getSystemService(Context.CONNECTIVITY_SERVI