| Volley 是一个提供给 Android 应用非常易用的网络库,更好的是这个库还加快了网络访问速度。本文会总览Volley库的主要功能,包括工作原理、常见工作模式以及如何使用该库从网络上并行加载缩略图到应用ListView中的流程。
Volley是 AsyncTask 的绝佳替代品。对于Android开发者来说,为了做好ListView和网络服务请求我们在AsyncTask上花了太多的时间。最近,我读了一篇关于AsyncTask非常棒的文章,我建议每一个 Android 开发者都去读一下+Fré Dumazy的 “Dark Side of AsyncTask”。AsyncTask 简直成为了所有项目中的冗余。多亏了Volley 这个框架,现在我们可以有效地减少在 AsyncTasks上花费的编码时间和精力了。
这篇文章演示了一个非常简单的 Volley的示例。例子中的VolleyTest 应用会从Yahoo Pipe上获取 JSON 文章数据并且显示在 ListView 中。


第一步: 从 Git 仓库把 Vollery 库克隆下来 1 | git clone https://android.googlesource.com/platform/frameworks/volley
|
第二步: 在 Android Studio 中新建一个叫 “VolleyTest” 的项目
第三步: 将 Volley 的库源文件拷贝到 “VolleyTest”的项目中,在这里复制源码是最安全和简单的方法。

第四步: 在 AndroidManifest.xml 中添加网络权限 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.kpbird.volleytest"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="14" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.kpbird.volleytest.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
</manifest>
|
|