`
喧嚣求静
  • 浏览: 580992 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Android基于volley的快速开发基类

阅读更多

Volley框架至2013面试以来,已经普及了很多android项目,在实际项目开发中,我们总想扩展为一个公用的类,在项目中简洁,方便的使用,尽量做到低耦合,高内聚。

Volley由一个请求队列维护网络请求的执行,结果会回调两个响应接口,一个成功,一个失败,在基于这种模式下,我们自己人为封装了一层回调,这样就可以做到更方便,上代码

/**
	 * 初始Volley
	 * 
	 * @param context
	 */
	public static void init(Context context) {
 
		//mQueue = Volley.newRequestQueue(context,new         HttpClientStack(httpclient));
 
		mQueue = Volley.newRequestQueue(context.getApplicationContext());
	}
 
 
 
	private static RequestQueue getQueue() {
		synchronized (VolleyUtils.class) {
			if (mQueue == null) {
				throw new RuntimeException("Please init VolleyUtils in your Application");
			}
			return mQueue;
		}
	}

 自己扩展的一个内部接口,主要是实现自己的结果封装分发

public interface ResultWatcher {
 
		void onStartRequest(int taskId);
 
		void onStopRequest(int taskId);
 
		void onResopnse(int taskId, String response);
 
		void onErrorResponse(int taskId, String errorMsg);
	}

 结合接口,进行构造的方法

public static void doPostStringRequest(Context context, String url, final Map<String, String> params,
			final ResultWatcher watcher, final int taskId) {
 
		StringRequest request = newPostStringRequest(url, params, watcher, taskId);
		request.setSequence(taskId);
		request.setTag(context);
		sendRequest(context, request);
		EasyAndApp.getApp().logger.d(TAG,
				"[ REQ taskid=" + taskId + "] post method,params\n " + CollectionUtils.transMapToString(params));
		if (watcher != null) {
			watcher.onStartRequest(taskId);
		}
	}
 

 

Android基于volley的快速开发基类《二》

0
1
分享到:
评论

相关推荐

    给android初学者的福利,网络通信框架volley-demo

    标题中的“给android初学者的福利,网络通信框架volley-demo”表明了这是一个关于Android开发的教程资源,特别关注的是Volley这个网络通信框架的实战示例。Volley是Google推出的一个高效的网络请求库,特别适合...

    AndroidVolley框架使用源代码

    Android Volley 是 Google 推出的一款高效的网络请求库,专为 Android 应用设计,旨在简化网络数据的加载,提高性能并减少内存消耗。这个压缩包文件 "Android_Volley" 很可能包含了Volley框架的源代码,使得开发者...

    volley框架源码实例

    Volley是一个由Google开发的Android网络请求库,它旨在提供高效、快速的网络通信解决方案。在Android应用开发中,Volley被广泛用于处理HTTP请求,如GET、POST等,以及JSON数据的解析。这个"volley框架源码实例"包含...

    Android-VolleyManager是对android网络请求框架volley的封装

    1. **内存缓存策略**:Volley提供了基于LruCache的内存缓存,可以快速响应重复请求,减少网络延迟。 2. **线程池管理**:Volley通过工作线程池处理网络请求,确保UI线程不被阻塞,提升用户体验。 3. **请求队列**:...

    Volley框架

    Volley的核心设计理念是快速响应和低内存占用,使其成为Android应用开发中处理网络通信的理想选择。 Volley框架包含以下几个主要组件: 1. **RequestQueue**:这是Volley的入口点,负责管理和调度所有的网络请求。...

    Volley源码

    Volley是Google专门为Android开发的一款高效、易用的网络通信库,它于2013年Google I/O大会上首次亮相。Volley的设计目标是提供一个轻量级的库,能够快速响应用户操作,同时处理大量的网络请求。在深入探讨Volley的...

    android开发模板

    "Android开发模板"就是为了提高开发效率而设计的一种工具,它集合了开发者在多次项目中反复使用的代码片段、布局设计、功能模块等,使得在新项目中可以快速引入并进行个性化定制,避免重复劳动。以下是基于这个主题...

    Volley学习资料和Demo

    Volley是Google推出的一款高效的网络请求库,专为Android平台设计...总之,Volley是一个强大的网络请求库,特别适合快速开发和小规模项目。通过深入学习和实践,开发者可以充分利用其优势,提升Android应用的网络性能。

    Google+Android+SDK开发范例大全+hb.rar

    《Google+Android+SDK开发范例大全+hb.rar》是一个包含Android SDK开发实例的压缩包,主要用于帮助开发者深入理解和实践Android应用开发。Android SDK(Software Development Kit)是Google提供的一个工具集,它允许...

    Android开发中使用Volley库发送HTTP请求的实例教程

    在Android开发中,Volley库是一个非常实用的工具,由Google设计并推荐使用,它简化了网络请求的处理,使得开发者能更高效地获取和管理网络数据。Volley的主要优点在于其内置的功能特性: 1. **请求队列与请求优先级...

    Android代码-安卓跑酷游戏

    在Android平台上开发一款跑酷游戏,如"RunningManEFamily",涉及到许多核心技术和关键知识点。这款游戏具有不同的角色,每个角色都有独特的技能,这需要在编程时为每个角色设计独立的逻辑和行为。以下是关于这款安卓...

    Android项目源码煎蛋网非官方客户端项目源码.zip

    注意:本项目基于android studio开发,eclipse可能无法直接导入。 本项目是一个煎蛋网的非官网安卓客户端项目源码,API用的是煎蛋官方的。 项目虽小,五脏俱全,学习这个项目,你将学到 Android Studio开发...

    BaseHelp,Android应用程序的一些基本功能。促进你的发展。.zip

    BaseHelp 可能提供了一套统一的 Activity 基类,包含了如生命周期管理、页面跳转、异常处理等常见操作,使得开发者在创建新的 Activity 时可以快速集成这些功能。 2. **Fragment封装**:Fragment 是用于支持多屏...

    Android项目源码煎蛋网非官方客户端项目

    注意:本项目基于android studio开发,eclipse可能无法直接导入。 本项目是一个煎蛋网的非官网安卓客户端项目源码,API用的是煎蛋官方的。项目虽小,五脏俱全,学习这个项目,你将学到 Android Studio开发Android...

    Android智能手机天气预报系统设计.pdf

    在Android平台上,应用程序的设计基于四大核心组件:Activity、Intent Receiver、Service和Content Provider。 1. Activity组件是Android应用的基础,代表用户界面的单一屏幕。每个Activity都是一个独立的类,从...

    volleyDemo:volley网络访问框架的demo

    Volley是一个由Google开发的Android网络库,专为快速、高效和便捷的网络访问而设计。这个"volleyDemo"项目是Volley框架的一个实际应用示例,它可以帮助开发者更好地理解和学习如何在Android应用程序中使用Volley进行...

    android安卓笔记

    - **HashMap**:`HashMap`是一种基于哈希表实现的`Map`容器,提供键值对存储功能,允许快速地插入和查找数据。在Android开发中,经常用于临时存储或传递数据。 #### layout—布局 - **LinearLayout**:`...

    BaseLibraryDemo.zip

    这个框架的设计目标是为开发者提供一个统一的起点,简化Android应用的开发流程,提高代码的复用性和可维护性。下面将详细探讨这些组成部分以及它们在实际开发中的应用。 1. **Base框架**: 基础框架是任何应用开发的...

Global site tag (gtag.js) - Google Analytics