Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android Volley框架的使用,androidvolley框架

Android Volley框架的使用,androidvolley框架

編輯:關於android開發

Android Volley框架的使用,androidvolley框架


在Android開發中,經常要通過HTTP請求訪問網絡。為了使通過HTTP請求訪問網絡的過程更加簡單,2013提出了新的HTTP通信框架--Volley。Volley使用起來非常簡單,適用於網絡訪問頻繁、通信數據量小的情況。

下載volley.jar文件並導入工程,加上訪問網絡的權限,就可以使用Volley框架訪問網絡了。

<uses-permission android:name="android.permission.INTERNET"/>

訪問的過程也十分簡單:(1)創建一個請求隊列;(2)創建請求對象;(3)將請求對象加入請求隊列。這三個步驟完成以後,請求隊列就可以自動、並發的實現網絡訪問了。多個請求對象可以加入到同一個請求隊列中,因此一個Activity只需要一個請求隊列就行了。

1. 創建請求隊列

定義請求隊列:

private RequestQueue mQueue;

創建請求隊列:

mQueue = Volley.newRequestQueue(MainActivity.this);

2. 創建請求對象並加入請求隊列

Volley有兩種請求對象:StringRequest和JSONRequest。

(1) StringRequest

    private void stringRequest(){
        StringRequest stringRequest = new StringRequest("http://www.126.com",
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        Log.i("Response:", response);
                    }
                }, new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Log.i("Error:", error.getMessage(), error);
                    }
                });
        mQueue.add(stringRequest);
    }

可以看見定義了一個StringRequest對象,然後將其加入到RequestQueue就可以了。StringRequest有三個參數:第一個是要訪問的URL(這裡是http://www.126.com);第二個是收到服務器響應的回調函數;第三個是服務器響應失敗的回調函數。運行的結果如下:

(2) JsonObjectRequest

    private void jsonRequest(){
        JsonObjectRequest jsonObjectRequest = new JsonObjectRequest("http://192.168.199.18:8080/MySchool/aclasquery", 
                null,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {
                        Log.i("Response:", response.toString());
                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Log.i("Error:", error.getMessage(), error);
                    }
                });
        mQueue.add(jsonObjectRequest);
    }

可以看見和StringRequest的使用基本上差不多,只不過StringRequest返回的是字符串,而JsonObjectRequest返回的是一個JSONObject。運行結果如下:

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved