本文实例为大家详细介绍了Android开发之HTTP访问网络的相关代码,供大家参考,具体内容如下
代码1:
package com.ywhttpurlconnection; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class YwhttpurlconnectionActivity extends Activity { /** Called when the activity is first created. */ private Button btn1 = null; private Button btn2 = null; private Button btn3 = null; private Button btn4 = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //直接获取数据 btn1 = (Button) this.findViewById(R.id.Button01); //GET方式传递 btn2 = (Button) this.findViewById(R.id.Button02); //POST方式传递 btn3 = (Button) this.findViewById(R.id.Button03); //获取图片 btn4 = (Button) this.findViewById(R.id.Button04); btn1.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setClass(YwhttpurlconnectionActivity.this, showdata.class); Bundle b = new Bundle(); b.putInt(\"id\", 1); intent.putExtras(b); startActivity(intent); } }); btn2.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setClass(YwhttpurlconnectionActivity.this, showdata.class); Bundle b = new Bundle(); b.putInt(\"id\", 2); intent.putExtras(b); startActivity(intent); } }); btn3.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setClass(YwhttpurlconnectionActivity.this, showdata.class); Bundle b = new Bundle(); b.putInt(\"id\", 3); intent.putExtras(b); startActivity(intent); } }); btn4.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setClass(YwhttpurlconnectionActivity.this, showdata.class); Bundle b = new Bundle(); b.putInt(\"id\", 4); intent.putExtras(b); startActivity(intent); } }); } }
代码2:
package com.ywhttpurlconnection; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.util.Log; import android.widget.ImageView; import android.widget.TextView; public class showdata extends Activity { private TextView tv = null; private ImageView iv = null; private Bitmap mBitmap = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.http); Intent intent = this.getIntent(); Bundle b = intent.getExtras(); int id = b.getInt(\"id\"); tv = (TextView) this.findViewById(R.id.TextView_HTTP); iv = (ImageView) this.findViewById(R.id.ImageView01); //直接获取数据 if (id == 1) { // String httpUrl = \"http://192.168.0.132:8080/Android/http.jsp\"; String httpUrl = \"http://www.jb-aptech.com.cn\"; URL url = null; try { url = new URL(httpUrl); } catch (MalformedURLException e) { e.printStackTrace(); } if (url != null) { try { // 打开连接,此处只是创建一个实例,并没有真正的连接 HttpURLConnection urlConn = (HttpURLConnection) url.openConnection(); // 连接 urlConn.connect(); InputStream input = urlConn.getInputStream(); InputStreamReader inputReader = new InputStreamReader(input); BufferedReader reader = new BufferedReader(inputReader); String inputLine = null; StringBuffer sb = new StringBuffer(); while ((inputLine = reader.readLine()) != null) { sb.append(inputLine).append(\"\\n\"); } reader.close(); inputReader.close(); input.close(); urlConn.disconnect(); if(sb !=null){ tv.setText(sb.toString()); }else{ tv.setText(\"读取的内容:NULL\"); } } catch (IOException e) { e.printStackTrace(); } }else{ Log.i(\"TAG\", \"url is null\"); } }else if(id==2){ //GET方式传递 // String httpUrl = \"http://192.168.0.132:8080/Android/httpreq.jsp?par=hk\"; String httpUrl = \"http://liveat.acewill.cn/liveat/?cmd=1&uid=xiaoming\"; URL url = null; try { url = new URL(httpUrl); } catch (MalformedURLException e) { e.printStackTrace(); } if (url != null) { try { HttpURLConnection urlConn = (HttpURLConnection) url .openConnection();// 打开连接,此处只是创建一个实力,并没有真正的连接 urlConn.setDoInput(true); urlConn.setDoOutput(true); urlConn.connect();// 连接 InputStream input = urlConn.getInputStream(); InputStreamReader inputReader = new InputStreamReader(input); BufferedReader reader = new BufferedReader(inputReader); String inputLine = null; StringBuffer sb = new StringBuffer(); while ((inputLine = reader.readLine()) != null) { sb.append(inputLine).append(\"\\n\"); } reader.close(); inputReader.close(); input.close(); urlConn.disconnect(); if(sb !=null){ tv.setText(sb.toString()); }else{ tv.setText(\"读取的内容:NULL\"); } } catch (IOException e) { e.printStackTrace(); } }else{ Log.i(\"TAG\", \"url is null\"); } }else if(id==3){ //POST方式传递 // String httpUrl = \"http://192.168.0.132:8080/Android/httpreq.jsp\"; String httpUrl = \"http://www.jb-aptech.com.cn\"; URL url = null; try { url = new URL(httpUrl); } catch (MalformedURLException e) { e.printStackTrace(); } if (url != null) { try { HttpURLConnection urlConn = (HttpURLConnection) url .openConnection();// 打开连接,此处只是创建一个实例,并没有真正的连接 urlConn.setDoInput(true); urlConn.setDoOutput(true); urlConn.setRequestMethod(\"POST\"); urlConn.setUseCaches(false);//post请求不能使用缓存. urlConn.setInstanceFollowRedirects(true);//是否自动重定向. urlConn.connect();// 连接 OutputStream out = urlConn.getOutputStream(); DataOutputStream data = new DataOutputStream(out); data.writeBytes(\"par=\"+URLEncoder.encode(\"hk\", \"GBK\")); data.flush(); data.close(); out.close(); InputStream input = urlConn.getInputStream(); InputStreamReader inputReader = new InputStreamReader(input); BufferedReader reader = new BufferedReader(inputReader); String inputLine = null; StringBuffer sb = new StringBuffer(); while ((inputLine = reader.readLine()) != null) { sb.append(inputLine).append(\"\\n\"); } reader.close(); inputReader.close(); input.close(); urlConn.disconnect(); if(sb !=null){ tv.setText(sb.toString()); }else{ tv.setText(\"读取的内容:NULL\"); } } catch (IOException e) { e.printStackTrace(); } }else{ Log.i(\"TAG\", \"url is null\"); } }else if(id==4){ String httpUrl = \"http://www.google.com.hk/intl/zh-CN/images/logo_cn.gif\"; URL url = null; try { url = new URL(httpUrl); } catch (MalformedURLException e) { e.printStackTrace(); } if (url != null) { try { // 打开连接,此处只是创建一个实例,并没有真正的连接 HttpURLConnection urlConn = (HttpURLConnection) url.openConnection(); urlConn.connect();// 连接 InputStream input = urlConn.getInputStream(); mBitmap = BitmapFactory.decodeStream(input); if(mBitmap != null){ iv.setImageBitmap(mBitmap); } } catch (IOException e) { e.printStackTrace(); } }else{ Log.i(\"TAG\", \"url is null\"); } } } }
代码3:
<?xml version=\"1.0\" encoding=\"utf-8\"?> <manifest xmlns:android=\"http://schemas.android.com/apk/res/android\" package=\"com.ywhttpurlconnection\" android:versionCode=\"1\" android:versionName=\"1.0\" > <uses-sdk android:minSdkVersion=\"10\" /> <uses-permission android:name=\"android.permission.INTERNET\"/> <application android:icon=\"@drawable/ic_launcher\" android:label=\"@string/app_name\" > <activity android:label=\"@string/app_name\" android:name=\".YwhttpurlconnectionActivity\" > <intent-filter > <action android:name=\"android.intent.action.MAIN\" /> <category android:name=\"android.intent.category.LAUNCHER\" /> </intent-filter> </activity> <activity android:name=\".showdata\"></activity> </application> </manifest>
代码4:http.xml
<?xml version=\"1.0\" encoding=\"utf-8\"?> <LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\" android:layout_width=\"match_parent\" android:layout_height=\"match_parent\" android:orientation=\"vertical\" > <TextView android:id=\"@+id/TextView_HTTP\" android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" /> <ImageView android:id=\"@+id/ImageView01\" android:layout_width=\"172dp\" android:layout_height=\"307dp\" > </ImageView> </LinearLayout>
代码5.mail.xml
<?xml version=\"1.0\" encoding=\"utf-8\"?> <LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\" android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\" android:orientation=\"vertical\" > <TextView android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" android:text=\"@string/hello\" /> <Button android:text=\"直接获取数据\" android:id=\"@+id/Button01\" android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"> </Button> <Button android:text=\"GET方式传递\" android:id=\"@+id/Button02\" android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"> </Button> <Button android:text=\"POST方式传递\" android:id=\"@+id/Button03\" android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"> </Button> <Button android:text=\"获取图片\" android:id=\"@+id/Button04\" android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"> </Button> </LinearLayout>
6.运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持phpstudy。
本文地址:https://www.stayed.cn/item/7455
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我