使用Get方式与网络通信是最常见的http通信,建立链接之后就可以通过输入流读取网络数据。
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.btGet).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
new AsyncTask<String, Void, Void>(){
@Override
protected Void doInBackground(String... params) {
try {
//新建url并打开连接,params[0]就是下方execute中的url地址
URL url=new URL(params[0]);
URLConnection connection=url.openConnection();
//获取网络的输入流数据
InputStream is=connection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
String line;
//获取内容
while((line=br.readLine())!=null){
System.out.println(line);
}
br.close();
is.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
//execute中的网址就是请求的地址
}.execute("http://fanyi.youdao.com/openapi.do?keyfrom=123textHttpGet&key=1903117903&type=data&doctype=xml&version=1.1&q=good");
}
});
}
}
写完后,需要在manifest中加入互联网访问的权限