您的位置:首页 > 理论基础 > 计算机网络

Android使用HttpURLConnection访问网络

2019-03-05 13:33 746 查看

Android上可以通过HttpURLConnection发送HTTP请求来访问网络,具体步骤如下:

1.获取HttpURLConncetion实例

通过调用url实例的openConnection()方法即可,代码如下:

[code]URL url = new URL("htp://www.baidu.com");
HttpURLConnection connection = (HttpURLConncetion) url.openConnection();

2.设置请求属性

[code]connection.setRequestMethod("GET");//请求方式
connection.setConnectionTimeout(8000);//连接超时
connection.setReadTimeout(8000);//读取超时

3.获取数据

调用getInputStream()方法获取服务器返回的输入流,并将数据保存到字符串,代码如下:

[code]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操作的时候再从子线程切换到主线程,开启线程的方法如下:

[code]new Thread(new Runnable(){
@Override
public void run(){
//...
}
}).start()

从子线程切换到主线程的方法如下:

[code]runOnUiThread(new Runnable(){
@Override
public void run(){
//...
}
})

注2:访问网络需要申请网络权限,在AndroidManifest.xml文件中添加:

[code]<uses-permission android:name="android.permission.INTERNET"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: