How to use Android Volley

Volley其實老在Google I/O 2013就被介紹了
但我問遍google,無論是自己包裝或使用第三方已封裝好的jar都是舊版做法,以下提供最新作法

環境&工具:Android Studio 1.1.0、jcenter


1. Download volley 
使用git command從google下載volley專案(請記得安裝Git)
前往Git的位置
cd C:\Program Files (x86)\Git\cmd
執行下載指令
git clone https://android.googlesource.com/platform/frameworks/volley


2. Make volley.aar
是的,你沒看錯,是.aar (Android Archive Library) !!!當然你要堅持用jar也是可以ˋ(′~‵")ˊ

目前,Android Studio似乎還無法直接做aar,我是隨意新增一個android專案,再把前一步驟下載回來的volley匯入並compile即可得到aar file~
假設專案根目錄在D:\AndroidStudioProject\MyApplication
aar產出位置就會是D:\AndroidStudioProject\MyApplication\volley\build\outputs\aar


3. Add volley.aar to your project
在"app"增加aar資料夾,複製步驟2製作的aar至此(就像以前用Eclipse複製jar到lib資料夾那樣)
此時,"app"底下的build.gradle檔案會自動替你補上相依性描述
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile(name: 'volley', ext: 'aar')
}
或是透過Project Structure來看


接著修改root directory下的build.gradle,加入粉紅色highlight處(因為剛剛把檔案放在aar這個自訂資料夾)
allprojects {
    repositories {
        jcenter()
        flatDir {
            dirs 'aar' //代表有個資料夾名稱叫做aar
        }
    }
}


4. Have fun to use volley
ya~開始在app專案使用
例如
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;

public class MainActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        RequestQueue mQueue = Volley.newRequestQueue(this);
    }

    //略...
}

進階用法請參考

跟第3點有關的參考資訊

因環境與工具的相異浪費了一些時間@@  希望這篇能幫助近期有需要的人

2 則留言:

piggy 提到...

強烈建議要讀完Android Developers的volley說明,不要只是抄襲網路強人做好的helper class!!!Android Developer有提到很多需要注意的小眉角...

piggy 提到...

剛剛使用同事開的專案,不知道是不是從eclipse轉過來有少什麼??! 在第3點加入aar的時候需要手動修改grandle,不然專案都不認得volley~記錄一下。然後,改完要記得Sync Project with Gradle Files