Android Volley完全解析,初识Volley的基本用法

原创 2016年08月29日 17:31:24

1.Volley简介

关于Volley,详情请见权威官网,
Transmitting Network Data Using Volley

郭霖前辈也有相关介绍,请见:
Android Volley完全解析(一),初识Volley的基本用法

2.导入Volley

Volley设置导入不是很方便,希望google能改进这个问题,它不像其它库,添加依赖只需一行代码就可以。它比较复杂,
首先,git clone Volley的github仓库。

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

可能你会遇到git的代理问题,没关系,遇到问题很正常,希望的一篇文章可以帮到你。

git clone Volley Failed?git 代理!

第二导入git clone 的Volley作为Android Library.
关于如何操作,下面链接是权威指导,如果打不开,那可能你需要一个科学上网代理工具。

Create an Android Library

在Android Studio中。File->New->Import Moudule
把你的Volley目录放进去,点击Finish.
这里写图片描述

这里写图片描述
第三,把作为依赖项。按着快捷键 Shift+Ctrl+Alt+S,选中Modules下面的app,点击Dependenices.如图

这里写图片描述

这里写图片描述
选中Volley,点击ok即可。

Add the INTERNET Permission

要使用Volley,首先

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

否则是不能联网的哦。

Use newRequestQueue

创建一个RequestQueue对象

final TextView mTextView = (TextView) findViewById(R.id.test_text);

        //Instantiate the RequestQueue.
        RequestQueue queue = Volley.newRequestQueue(this);
        String url = "http://www.baidu.com";

创建一个StringRequest对象

//Request a string response from the provided URL.
        StringRequest stringRequest = new StringRequest(Request.Method.GET,
                url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                // Display the first 500 characters of the response string.
                mTextView.setText("Response is: "+ response.substring(0,500));

            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                mTextView.setText("That didn't work!");

            }
        });

将这个StringRequest对象添加到RequestQueue里面

 // Add the request to the RequestQueue.
        queue.add(stringRequest);

完整代码

MainAcitvity

package com.lizheng.www.volleytest2;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final TextView mTextView = (TextView) findViewById(R.id.test_text);

        //Instantiate the RequestQueue.你可能会发现报错cannot resolve symbol requestqueue
        //add following to your build.gradle file       compile 'com.mcxiaoke.volley:library:1.0.19'
        RequestQueue queue = Volley.newRequestQueue(this);
        String url = "http://www.baidu.com";

        //Request a string response from the provided URL.
        StringRequest stringRequest = new StringRequest(Request.Method.GET,
                url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                // Display the first 500 characters of the response string.
                mTextView.setText("Response is: "+ response.substring(0,500));

            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                mTextView.setText("That didn't work!");

            }
        });

        // Add the request to the RequestQueue.
        queue.add(stringRequest);

    }
}

activity_main

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.lizheng.www.volleytest2.MainActivity">

    <TextView
        android:id="@+id/test_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />
</RelativeLayout>
版权声明:给别人一份尊重,留自己一方安心。

Volley===Volley框架的基本使用方法

现在开发app,可以说离不开网络操作,今天给大家介绍一下android网络框架volley的使用方法。 volley简介 Volley主页 https://android.googleso...
  • IT1039871366
  • IT1039871366
  • 2016年01月29日 17:14
  • 5510

Android Volley完全解析(二),初识Volley的基本用法

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17482165 在上一篇文章中,我们了解了Volley到底是什么,以及它的基本用法。...
  • ccccc821
  • ccccc821
  • 2016年09月07日 11:43
  • 112

Android Volley完全解析(一) 初识Volley的基本用法

原文链接  http://blog.csdn.net/guolin_blog/article/details/17482095 1. Volley简介 我们平时在开发And...
  • qq_36963950
  • qq_36963950
  • 2017年08月09日 15:42
  • 69

Android Volley完全解析1:初识Volley的基本用法

我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpUR...
  • axi295309066
  • axi295309066
  • 2017年03月15日 01:56
  • 230

(转载)Android Volley完全解析,初识Volley的基本用法

Android Volley完全解析,初识Volley的基本用法 转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/174...
  • qiqi520yaoyao
  • qiqi520yaoyao
  • 2016年02月19日 16:02
  • 304

Android Volley完全解析,初识Volley的基本用法

最近一直在学习网络加载图片方面的知识,感觉用Volley解析的方式挺方便的,当然肯定还有更便捷的方法,以下是这位大神博客关于Volley完全解析的网址,已经贴出来了,自己点连接去看http://blo...
  • kzg_IP
  • kzg_IP
  • 2016年04月24日 09:06
  • 215

Android Volley完全解析(一),初识Volley的基本用法

我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpUR...
  • sinyu890807
  • sinyu890807
  • 2014年04月10日 09:45
  • 303766

Android Volley完全解析(一):初识Volley的基本用法

转载自:郭霖的博客http://blog.csdn.net/guolin_blog/article/details/17482165 1. Volley简介 我们平时在开发Android应用的...
  • AudreyShen
  • AudreyShen
  • 2017年03月05日 17:08
  • 108

Android Volley完全解析(四),带你从源码的角度理解Volley

经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了,但是对于Volley的工作原理,恐怕有很多朋友还不是很清楚。因此,本篇文章中我们就来一起阅读一下Volley的源码,将它的工作流程整体地...
  • sinyu890807
  • sinyu890807
  • 2014年05月15日 09:39
  • 77258

【android】利用volley+Gson POST json请求来接收jsonObject并解析json数据

这里安利一个介绍volley几种常用方法的blog:http://blog.csdn.net/fenghai22/article/details/44061307 进入正题,当request head...
  • qiudeli18
  • qiudeli18
  • 2016年05月02日 21:26
  • 1207
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android Volley完全解析,初识Volley的基本用法
举报原因:
原因补充:

(最多只允许输入30个字)