Android数据存储网络存储数据
2012-06-17 11:59
399 查看
Android提供了通过网络来实现数据的存储和获取的方法。
我们可以调用WebService返回的数据或是解析HTTP协议实现网络数据交互。
具体需要熟悉java.net.*,Android.net.*这两个包的内容,详细的类与方法的说明,请参考SDK。
下面是一个通过地区名称查询该地区的天气预报,以POST发送的方式发送请求到webservicex.net站点,访问WebService.webservicex.net站点上提供查询天气预报的服务。
代码如下:
package com.android.weather;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import android.app.Activity;
import android.os.Bundle;
public class MyAndroidWeatherActivity extends Activity {
//定义需要获取的内容来源地址
private static final String SERVER_URL =
"http://www.webservicex.net/WeatherForecast.asmx/GetWeatherByPlaceName";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
HttpPost request = new HttpPost(SERVER_URL); //根据内容来源地址创建一个Http请求
// 添加一个变量
List<NameValuePair> params = new ArrayList<NameValuePair>();
// 设置一个地区名称
params.add(new BasicNameValuePair("PlaceName", "NewYork")); //添加必须的参数
try {
//设置参数的编码
request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
//发送请求并获取反馈
HttpResponse httpResponse = new DefaultHttpClient().execute(request);
// 解析返回的内容
if(httpResponse.getStatusLine().getStatusCode() != 404){
String result = EntityUtils.toString(httpResponse.getEntity());
System.out.println(result);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
别忘记了在配置文件中设置访问网络权限:
<uses-permission android:name="android.permission.INTERNET" />
转自: http://www.cnblogs.com/hanyonglu/archive/2012/03/01/2374894.html
我们可以调用WebService返回的数据或是解析HTTP协议实现网络数据交互。
具体需要熟悉java.net.*,Android.net.*这两个包的内容,详细的类与方法的说明,请参考SDK。
下面是一个通过地区名称查询该地区的天气预报,以POST发送的方式发送请求到webservicex.net站点,访问WebService.webservicex.net站点上提供查询天气预报的服务。
代码如下:
package com.android.weather;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import android.app.Activity;
import android.os.Bundle;
public class MyAndroidWeatherActivity extends Activity {
//定义需要获取的内容来源地址
private static final String SERVER_URL =
"http://www.webservicex.net/WeatherForecast.asmx/GetWeatherByPlaceName";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
HttpPost request = new HttpPost(SERVER_URL); //根据内容来源地址创建一个Http请求
// 添加一个变量
List<NameValuePair> params = new ArrayList<NameValuePair>();
// 设置一个地区名称
params.add(new BasicNameValuePair("PlaceName", "NewYork")); //添加必须的参数
try {
//设置参数的编码
request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
//发送请求并获取反馈
HttpResponse httpResponse = new DefaultHttpClient().execute(request);
// 解析返回的内容
if(httpResponse.getStatusLine().getStatusCode() != 404){
String result = EntityUtils.toString(httpResponse.getEntity());
System.out.println(result);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
别忘记了在配置文件中设置访问网络权限:
<uses-permission android:name="android.permission.INTERNET" />
转自: http://www.cnblogs.com/hanyonglu/archive/2012/03/01/2374894.html
相关文章推荐
- Android数据存储方式之:网络数据交互
- Android手机数据读写方法(内部存储、SD卡,网络加载,包内文件读取)
- Android(四)数据存储之四网络
- Android数据的存储方式(六) —— 网络存储数据
- Android(五)数据存储之五网络数据交互
- Android数据存储:获取网络图片把图片保存到SD卡中并从SDk卡中读取(通过Bitmap方法)
- Android(五)数据存储之五网络多线程断点下载-世事如棋,乾坤莫测,笑 ...  -  棒槌网@Android开发论坛 - Powered by
- Android(五)数据存储之五网络多线程断点下载
- 我的Android之旅(十八)---数据存储--向SD卡保存网络上的图片
- Android数据存储--网络存储
- Android之网络数据存储
- Android之数据存储详解(三)之网络存储数据
- Android---数据读取、存储、删除(内存储/SD卡存储/网络数据读取存储)
- 详解Android的网络数据存储
- [置顶] Android网络与数据存储03-在线请求天气API,并解析其中的json数据予以显示
- Android网络与数据存储01
- android 五种数据存储之网络存储数据
- android 数据网络存储
- Android第六讲——数据存储(五种)SharedPreferences、内部存储(缓存cache)、外部存储(Sdcrad)、SQLite数据库、网络存储
- Android网络与数据存储——网络编程数据处理(网络请求解析Json,解析xml)