SlideShare une entreprise Scribd logo
1  sur  11
서울시 마포구 상암동 누리꿈스퀘어 연구개발타워 1111 호 _ 070.7450.6572 _ dev@jellycoaster.com
Android
Volley Library
Jellycoaster Inc.
Dev.team
Volley Library 란 ?
Google 에서 제공하는 네트워크 라이브러리로써 ,
Google I/O 2013 에서 발표된 Session 내용 중
가장 좋은 반응을 받은 세션 중
하나라고 합니다 .
2013 Jellycoaster Inc. Dev.team
Volley Library 를 활용한 앱
2013 Jellycoaster Inc. Dev.team
play 스토어 인앱 결제
특징
* requestQueue 를 이용한 동시요청 처리
* 요청 우선순위 설정 가능
( A 요청이 B 요청보다 먼저 응답을 받아야 할 경우 )
* 요청 취소 가능
* JSON Object request, response 기능
* NetworkImageView 제공 ( imageView 에 바로 호출할 url 설정 )
* MemoryCache, diskcache 지원
2013 Jellycoaster Inc. Dev.team
초기화 & 호출
2013 Jellycoaster Inc. Dev.team
private RequestQueue mQueue;
private ImageLoader mImageLoader;
mQueue = Volley.newRequestQueue(context);
mImageLoader = new ImageLoader(mQueue, new BitmapCache());
ImageRequest imageRequest
= new ImageRequest("http://...(URL)", listener, 0, 0,
Config.ARGB_8888, error);
mQueue.add(imageRequest);
ImageRequest 객체를 생성해서 RequestQueue 에 넣어준 후 ,
호출할 url 은 ImageRequest 에 설정한 후 ,
리턴은 설정한 listener 에서 받아 처리합니다 .
응답 받는 코드
2013 Jellycoaster Inc. Dev.team
ImageView imageView
= (ImageView) findViewById(R.id.image_view);
Response.Listener<Bitmap> listener = new Response.Listener<Bitmap>() {
@Override
public void onResponse(Bitmap result) {
// On success
imageView.setImageBitmap(result);
}
};
성공적으로 리스너가 리턴받는 경우 위 코드처럼 ImageView 에 리턴
받은 bitmap 을 설정할 수 있습니다 .
( 이 부분을 이용하여 리턴받은 bitmap 크기를 변경하거나 용량을 줄
여 적용할 수 있습니다 . )
Get 방식 호출
2013 Jellycoaster Inc. Dev.team
Listener<String> listener = new Listener<String>() {
@Override
public void onResponse(String result) {
// some action
}
};
String uri = String.format("http://somesite.com/some.php", object);
StringRequest myReq = new StringRequest(
Method.GET, uri,
listener, errorListener);
mQueue.add(myReq);
GET 방식으로 호출하는 경우 , StringRequest method type 을
Method.GET 으로 설정하고 , 리턴받을 listener 와 errorListener 를
설정하고 , RequestQueue 에 추가합니다 .
Post 방식 호출
2013 Jellycoaster Inc. Dev.team
StringRequest myReq = new StringRequest(Method.POST,
"http://somesite.com/some_endpoint.php",
listener,
errorListener)
{
@Override
protected Map<String, String> getParams() throws com.android.volley.AuthFailureError
{
Map<String, String> params = new HashMap<String, String>();
params.put("param1", num1);
params.put("param2", num2);
return params;
};
}; mQueue.add(myReq);
Post 방식으로 호출하는 경우 StringRequest 의 getParams() 함수 안에서
Map<String, String> params 변수에 params.put("param1", num1); 과 같이 ,
파라미터를 추가하여 호출할 수 있습니다 .
Volley Library 샘플 앱 화면
2013 Jellycoaster Inc. Dev.team
참고 자료
2013 Jellycoaster Inc. Dev.team
공식 발표 자료 : http://www.youtube.com/watch?v=yhv8l9F44qo
Volley 샘플 앱 : https://github.com/ogrebgr/android_volley_examples
서울시 마포구 상암동 누리꿈스퀘어 연구개발타워 1111 호 _ 070.7450.6572 _ dev@jellycoaster.com
감사합니다 !
Jellycoaster Inc.
Dev.team

Contenu connexe

Similaire à Android volley library

반복적인 작업이 싫은 안드로이드 개발자에게
반복적인 작업이 싫은 안드로이드 개발자에게반복적인 작업이 싫은 안드로이드 개발자에게
반복적인 작업이 싫은 안드로이드 개발자에게Sungju Jin
 
HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3J B
 
AngularJS의 개발방식에 대하여
AngularJS의 개발방식에 대하여AngularJS의 개발방식에 대하여
AngularJS의 개발방식에 대하여Jin wook
 
Cappuccino fundamental
Cappuccino fundamentalCappuccino fundamental
Cappuccino fundamentalJeongHun Byeon
 
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수NAVER Engineering
 
100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법SooHwan Ok
 
Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기Kyoung Up Jung
 
Android 기초강좌 애플리캐이션 구조
Android 기초강좌 애플리캐이션 구조Android 기초강좌 애플리캐이션 구조
Android 기초강좌 애플리캐이션 구조Sangon Lee
 
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Couchbase .net client 개발
Couchbase .net client 개발Couchbase .net client 개발
Couchbase .net client 개발세진 김
 
Couchbase .net client 개발
Couchbase .net client 개발Couchbase .net client 개발
Couchbase .net client 개발jr p
 
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기현철 조
 
Nodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjsNodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjs기동 이
 
Pinpoint spring_camp 2015
Pinpoint spring_camp 2015Pinpoint spring_camp 2015
Pinpoint spring_camp 2015Woonduk-Kang
 
Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Kim Hunmin
 
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들Kivol
 

Similaire à Android volley library (20)

반복적인 작업이 싫은 안드로이드 개발자에게
반복적인 작업이 싫은 안드로이드 개발자에게반복적인 작업이 싫은 안드로이드 개발자에게
반복적인 작업이 싫은 안드로이드 개발자에게
 
MVP 패턴 소개
MVP 패턴 소개MVP 패턴 소개
MVP 패턴 소개
 
HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3
 
AngularJS의 개발방식에 대하여
AngularJS의 개발방식에 대하여AngularJS의 개발방식에 대하여
AngularJS의 개발방식에 대하여
 
Nest js 101
Nest js 101Nest js 101
Nest js 101
 
Cappuccino fundamental
Cappuccino fundamentalCappuccino fundamental
Cappuccino fundamental
 
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
 
100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법
 
Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기
 
Swt J Face 2/3
Swt J Face 2/3Swt J Face 2/3
Swt J Face 2/3
 
4-3. jquery
4-3. jquery4-3. jquery
4-3. jquery
 
Android 기초강좌 애플리캐이션 구조
Android 기초강좌 애플리캐이션 구조Android 기초강좌 애플리캐이션 구조
Android 기초강좌 애플리캐이션 구조
 
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
 
Couchbase .net client 개발
Couchbase .net client 개발Couchbase .net client 개발
Couchbase .net client 개발
 
Couchbase .net client 개발
Couchbase .net client 개발Couchbase .net client 개발
Couchbase .net client 개발
 
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
 
Nodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjsNodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjs
 
Pinpoint spring_camp 2015
Pinpoint spring_camp 2015Pinpoint spring_camp 2015
Pinpoint spring_camp 2015
 
Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까?
 
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
 

Plus de 정인 주

목요일의 목어
목요일의 목어목요일의 목어
목요일의 목어정인 주
 
130522 book study-사례로보는ux디자인
130522 book study-사례로보는ux디자인130522 book study-사례로보는ux디자인
130522 book study-사례로보는ux디자인정인 주
 
130416 blog bookstudy_final
130416 blog bookstudy_final130416 blog bookstudy_final
130416 blog bookstudy_final정인 주
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog정인 주
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog정인 주
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog정인 주
 
Nfc개발문서
Nfc개발문서Nfc개발문서
Nfc개발문서정인 주
 
Book study ________ ___________
Book study  ________ ___________Book study  ________ ___________
Book study ________ ___________정인 주
 
프로토타이핑
프로토타이핑프로토타이핑
프로토타이핑정인 주
 
퍼소나로 완성하는 인터랙션 디자인
퍼소나로 완성하는 인터랙션 디자인퍼소나로 완성하는 인터랙션 디자인
퍼소나로 완성하는 인터랙션 디자인정인 주
 

Plus de 정인 주 (20)

목요일의 목어
목요일의 목어목요일의 목어
목요일의 목어
 
Cdr with php
Cdr with phpCdr with php
Cdr with php
 
130522 book study-사례로보는ux디자인
130522 book study-사례로보는ux디자인130522 book study-사례로보는ux디자인
130522 book study-사례로보는ux디자인
 
Regex
RegexRegex
Regex
 
130416 blog bookstudy_final
130416 blog bookstudy_final130416 blog bookstudy_final
130416 blog bookstudy_final
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog
 
Android gcm ex_askdog
Android gcm ex_askdogAndroid gcm ex_askdog
Android gcm ex_askdog
 
Mvp 이전2
Mvp 이전2Mvp 이전2
Mvp 이전2
 
Nfc개발문서
Nfc개발문서Nfc개발문서
Nfc개발문서
 
Book study ________ ___________
Book study  ________ ___________Book study  ________ ___________
Book study ________ ___________
 
Nfc수정
Nfc수정Nfc수정
Nfc수정
 
Museum수정
Museum수정Museum수정
Museum수정
 
Nfc
NfcNfc
Nfc
 
Museum
MuseumMuseum
Museum
 
Starbucks
StarbucksStarbucks
Starbucks
 
Nfc
NfcNfc
Nfc
 
프로토타이핑
프로토타이핑프로토타이핑
프로토타이핑
 
퍼소나로 완성하는 인터랙션 디자인
퍼소나로 완성하는 인터랙션 디자인퍼소나로 완성하는 인터랙션 디자인
퍼소나로 완성하는 인터랙션 디자인
 
Jira manual
Jira manualJira manual
Jira manual
 

Android volley library

  • 1. 서울시 마포구 상암동 누리꿈스퀘어 연구개발타워 1111 호 _ 070.7450.6572 _ dev@jellycoaster.com Android Volley Library Jellycoaster Inc. Dev.team
  • 2. Volley Library 란 ? Google 에서 제공하는 네트워크 라이브러리로써 , Google I/O 2013 에서 발표된 Session 내용 중 가장 좋은 반응을 받은 세션 중 하나라고 합니다 . 2013 Jellycoaster Inc. Dev.team
  • 3. Volley Library 를 활용한 앱 2013 Jellycoaster Inc. Dev.team play 스토어 인앱 결제
  • 4. 특징 * requestQueue 를 이용한 동시요청 처리 * 요청 우선순위 설정 가능 ( A 요청이 B 요청보다 먼저 응답을 받아야 할 경우 ) * 요청 취소 가능 * JSON Object request, response 기능 * NetworkImageView 제공 ( imageView 에 바로 호출할 url 설정 ) * MemoryCache, diskcache 지원 2013 Jellycoaster Inc. Dev.team
  • 5. 초기화 & 호출 2013 Jellycoaster Inc. Dev.team private RequestQueue mQueue; private ImageLoader mImageLoader; mQueue = Volley.newRequestQueue(context); mImageLoader = new ImageLoader(mQueue, new BitmapCache()); ImageRequest imageRequest = new ImageRequest("http://...(URL)", listener, 0, 0, Config.ARGB_8888, error); mQueue.add(imageRequest); ImageRequest 객체를 생성해서 RequestQueue 에 넣어준 후 , 호출할 url 은 ImageRequest 에 설정한 후 , 리턴은 설정한 listener 에서 받아 처리합니다 .
  • 6. 응답 받는 코드 2013 Jellycoaster Inc. Dev.team ImageView imageView = (ImageView) findViewById(R.id.image_view); Response.Listener<Bitmap> listener = new Response.Listener<Bitmap>() { @Override public void onResponse(Bitmap result) { // On success imageView.setImageBitmap(result); } }; 성공적으로 리스너가 리턴받는 경우 위 코드처럼 ImageView 에 리턴 받은 bitmap 을 설정할 수 있습니다 . ( 이 부분을 이용하여 리턴받은 bitmap 크기를 변경하거나 용량을 줄 여 적용할 수 있습니다 . )
  • 7. Get 방식 호출 2013 Jellycoaster Inc. Dev.team Listener<String> listener = new Listener<String>() { @Override public void onResponse(String result) { // some action } }; String uri = String.format("http://somesite.com/some.php", object); StringRequest myReq = new StringRequest( Method.GET, uri, listener, errorListener); mQueue.add(myReq); GET 방식으로 호출하는 경우 , StringRequest method type 을 Method.GET 으로 설정하고 , 리턴받을 listener 와 errorListener 를 설정하고 , RequestQueue 에 추가합니다 .
  • 8. Post 방식 호출 2013 Jellycoaster Inc. Dev.team StringRequest myReq = new StringRequest(Method.POST, "http://somesite.com/some_endpoint.php", listener, errorListener) { @Override protected Map<String, String> getParams() throws com.android.volley.AuthFailureError { Map<String, String> params = new HashMap<String, String>(); params.put("param1", num1); params.put("param2", num2); return params; }; }; mQueue.add(myReq); Post 방식으로 호출하는 경우 StringRequest 의 getParams() 함수 안에서 Map<String, String> params 변수에 params.put("param1", num1); 과 같이 , 파라미터를 추가하여 호출할 수 있습니다 .
  • 9. Volley Library 샘플 앱 화면 2013 Jellycoaster Inc. Dev.team
  • 10. 참고 자료 2013 Jellycoaster Inc. Dev.team 공식 발표 자료 : http://www.youtube.com/watch?v=yhv8l9F44qo Volley 샘플 앱 : https://github.com/ogrebgr/android_volley_examples
  • 11. 서울시 마포구 상암동 누리꿈스퀘어 연구개발타워 1111 호 _ 070.7450.6572 _ dev@jellycoaster.com 감사합니다 ! Jellycoaster Inc. Dev.team