android開源框架android-async-http使用
來源:程序員人生 發(fā)布時間:2014-10-16 09:30:29 閱讀次數(shù):2866次
1.新建項(xiàng)目,去官網(wǎng)下載zip包,解壓,打開releases文件,把里面最新的jar包,考入項(xiàng)目工程libs目錄下,引入包。
2.通過1,就可以使用了,很簡單,下面是自己寫的demo,用它提供的各種不同方法完成從服務(wù)器獲取一個json數(shù)據(jù):
package com.http;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;
import com.loopj.android.http.BinaryHttpResponseHandler;
import com.loopj.android.http.JsonHttpResponseHandler;
import com.loopj.android.http.RequestParams;
public class HttpUtil {
private static AsyncHttpClient client =new AsyncHttpClient(); //實(shí)例話對象
static
{
client.setTimeout(11000); //設(shè)置鏈接超時,如果不設(shè)置,默認(rèn)為10s
}
public static void get(String urlString,AsyncHttpResponseHandler res) //用一個完整url獲取一個string對象
{
client.get(urlString, res);
}
public static void get(String urlString,RequestParams params,AsyncHttpResponseHandler res) //url里面帶參數(shù)
{
client.get(urlString, params,res);
}
public static void get(String urlString,JsonHttpResponseHandler res) //不帶參數(shù),獲取json對象或者數(shù)組
{
client.get(urlString, res);
}
public static void get(String urlString,RequestParams params,JsonHttpResponseHandler res) //帶參數(shù),獲取json對象或者數(shù)組
{
client.get(urlString, params,res);
}
public static void get(String uString, BinaryHttpResponseHandler bHandler) //下載數(shù)據(jù)使用,會返回byte數(shù)據(jù)
{
client.get(uString, bHandler);
}
public static AsyncHttpClient getClient()
{
return client;
}
}
這個類主要列出了我們常用的get方法,在要使用的地方,調(diào)用該類就行了。
具體使用的類:
package com.http;
import java.io.File;
import java.io.FileOutputStream;
import org.json.JSONArray;
import org.json.JSONObject;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
import com.loopj.android.http.AsyncHttpResponseHandler;
import com.loopj.android.http.BinaryHttpResponseHandler;
import com.loopj.android.http.JsonHttpResponseHandler;
import com.loopj.android.http.RequestParams;
public class MainActivity extends Activity {
private TextView textView; // 頂部textview
private ProgressDialog pDialog;
private TextView textView2; // 下面textview,顯示獲取的所有數(shù)據(jù)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.text);
textView2 = (TextView) findViewById(R.id.text2);
}
public void method1(View view) {
pDialog = ProgressDialog.show(this, "請稍等", "數(shù)據(jù)加載中");
String urlString = "http://client.azrj.cn/json/cook/cook_list.jsp?type=1&p=2&size=10"; // 一
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈
------分隔線----------------------------
------分隔線----------------------------