Android HttpClient网络通信
16lz
2021-01-23
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><Button android:text="GET" android:id="@+id/Button01"android:layout_width="fill_parent"android:layout_height="wrap_content"></Button><Button android:text="POST" android:id="@+id/Button02"android:layout_width="fill_parent"android:layout_height="wrap_content"></Button><TextView android:id="@+id/TextView" android:layout_width="fill_parent"android:layout_height="wrap_content"/></LinearLayout>
package com.Aina.Android;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.List;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.HttpStatus;import org.apache.http.NameValuePair;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.message.BasicNameValuePair;import org.apache.http.util.EntityUtils;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.widget.Button;import android.widget.TextView;public class Test extends Activity implements Runnable{ /** Called when the activity is first created. */private Button btn_get = null;private Button btn_post = null;private TextView tv_rp = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn_get = (Button) this.findViewById(R.id.Button01); btn_post = (Button) this.findViewById(R.id.Button02); tv_rp = (TextView) this.findViewById(R.id.TextView); btn_get.setOnClickListener(new Button.OnClickListener(){public void onClick(View v) {// TODO Auto-generated method stubString httpUrl = "http://192.168.0.132:8080/Android/httpreq.jsp?par=request-get";HttpGet request = new HttpGet(httpUrl);HttpClient httpClient = new DefaultHttpClient();try {HttpResponse response = httpClient.execute(request);if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){String str = EntityUtils.toString(response.getEntity());tv_rp.setText(str);}else{tv_rp.setText("请求错误");} } catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}} }); btn_post.setOnClickListener(new Button.OnClickListener(){public void onClick(View v) {// TODO Auto-generated method stubString httpUrl = "http://192.168.0.132:8080/Android/httpreq.jsp";HttpPost request = new HttpPost(httpUrl);List<NameValuePair> params = new ArrayList<NameValuePair>();params.add(new BasicNameValuePair("par","request-post"));try {HttpEntity entity = new UrlEncodedFormEntity(params, "UTF-8");request.setEntity(entity);HttpClient client = new DefaultHttpClient();HttpResponse response = client.execute(request);if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){String str = EntityUtils.toString(response.getEntity());tv_rp.setText(str);}else{tv_rp.setText("请求错误");}} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}} }); new Thread(this).start(); } public void refresh(){ String httpUrl = "http://192.168.0.132:8080/Android/httpreq.jsp"; try {URL url = new URL(httpUrl);HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();urlConn.connect();InputStream input = urlConn.getInputStream();InputStreamReader inputreader = new InputStreamReader(input);BufferedReader reader = new BufferedReader(inputreader);String str = null;StringBuffer sb = new StringBuffer();while((str = reader.readLine())!= null){sb.append(str).append("\n");}if(sb != null){tv_rp.setText(sb.toString());}else{tv_rp.setText("NULL");}reader.close();inputreader.close();input.close();reader = null;inputreader = null;input = null;} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} } public Handler handler = new Handler(){ public void handleMessage(Message msg){ super.handleMessage(msg); refresh(); } };public void run() {// TODO Auto-generated method stubwhile(true){try {Thread.sleep(1000);handler.sendMessage(handler.obtainMessage());} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.Aina.Android" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Test" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application><uses-permission android:name="android.permission.INTERNET" /></manifest>
更多相关文章
- 错误收集
- android 开发中java.net.UnknownServiceException: CLEARTEXT co
- Android警告错误搜集
- INSTALL_FAILED_INSUFFICIENT_STORAGE 这个错误怎么解决?
- 升级到Android Studio 3.0出现 aapt2错误
- android studio 编译的时候出现的错误和解决方法
- android之layout_toLeftOf和layout_toRightOf出现的错误
- Unity Android打包apk安装错误INSTALL_FAILED_CONFLICTING_PROVI
- Android纠正Activity横竖屏切换的生命周期的错误