本文实例为大家详细介绍了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
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我