Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android網絡開源框架volley之一

android網絡開源框架volley之一

編輯:關於Android編程

五月份的Google I/O 2013開發者大會上,Google發布了開源的網絡框架volley,聽說反應很好,因此決定花點時間研究一下。


1、Volley是干什麼的

Volley is a library that makes networking for Android apps easier and most importantly, faster.(From:https://developers.google.com/events/io/sessions/325304728)。這個句話還是比較抽象的,更快更容易體現在哪些方面,在什麼時候使用?這些都需要我們來慢慢了解~~


2、從獲取開始

volley獲取地址(如果文中所列地址訪問不了,請自行想辦法,你該懂得):

git clone https://android.googlesource.com/platform/frameworks/volley

下載下來之後,你可以把它作為一個library導入你的項目,或者打包之後導入你的項目,這樣我們就可以使用了。我下載的源碼和生成的jar可以在這裡下載。


3、開始一個簡單的demo

volley的使用流程大致是這樣的。首先,我們拿到volley的請求隊列,接著創建自己的請求對象,然後將其放入請求隊列,再然後呢?再然後就是等請求結果吧~~是不是太簡單了?其實就是這麼簡單。所以就直接上代碼吧:
public class MainActivity extends Activity implements OnClickListener {

	private static final String URL = "http://www.baidu.com/";
	private RequestQueue mQueue; // volley的請求隊列

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		// 通過此種方式拿到請求隊列,當然實際使用中我們不會這麼做,通常會作為一個全局變量來使用
		mQueue = Volley.newRequestQueue(getApplicationContext()); 
	}

	@Override
	public void onClick(View v) {
		volleyRequest();
	}

	/**
	 * 創建一個請求,這裡我們做一個最簡單的通過GET方式請求網頁源碼的操作。請求成功後打印結果。
	 */
	private void volleyRequest() {
		StringRequest request = new StringRequest(Method.GET, URL, new Listener() {

			@Override
			public void onResponse(String arg0) {
				Toast.makeText(getApplicationContext(), arg0, Toast.LENGTH_LONG).show();
				Log.d("onResponse", arg0);
			}
		}, new ErrorListener() {

			@Override
			public void onErrorResponse(VolleyError arg0) {
				Toast.makeText(getApplicationContext(), arg0.toString(), Toast.LENGTH_LONG).show();
				Log.d("onErrorResponse", arg0.toString());
			}
		});
		mQueue.add(request);
	}
}


4、總結

相信你已經對這個流程有了大概的認識,的確很簡單,想要的結果就這麼出來了,而且也沒有在主線程中創建一個子線程來跑請求的代碼。可能你會有些疑問了,GET請求通過URL來傳遞參數,我們可以把參數直接加在字符串後面,那POST請求呢?還有就是volley就這些功能嗎?還有其他的嗎?她的優點在哪些方面體現?哈哈,這篇就說這些,下篇繼續~~

最後在補充一下volley發布會的視頻和一個PDF(也就是最上面那個頁面中的內容),下載點這裡:http://pan.baidu.com/s/1dDyz23v。

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