Android上可以通过HttpURLConnection发送HTTP请求来访问网络,具体步骤如下:
1.获取HttpURLConncetion实例
通过调用url实例的openConnection()方法即可,代码如下:
URL url = new URL("htp://www.baidu.com");
HttpURLConnection connection = (HttpURLConncetion) url.openConnection();2.设置请求属性
connection.setRequestMethod("GET");//请求方式
connection.setConnectionTimeout(8000);//连接超时
connection.setReadTimeout(8000);//读取超时
3.获取数据
调用getInputStream()方法获取服务器返回的输入流,并将数据保存到字符串,代码如下:
InputStream in = connection.getInputStream();//获取输入流
reader = new BufferReader(new InputStreamReader(in));
StringBuilder response = new StringBuilder();//构建字符数组
String line;
while((line = reader.readerLine())!=null){
response.append(line);//将数据写入字符串
}
reader.close();
connection.close();
注1:一般将网络请求写在子线程里面,在进行UI操作的时候再从子线程切换到主线程,开启线程的方法如下:
new Thread(new Runnable(){
@Override
public void run(){
//...
}
}).start()从子线程切换到主线程的方法如下:
runOnUiThread(new Runnable(){
@Override
public void run(){
//...
}
})注2:访问网络需要申请网络权限,在AndroidManifest.xml文件中添加:
<uses-permission android:name="android.permission.INTERNET"/>版权声明:本文为yuncaidaishu原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。