개발계획서를 쓰는 이유
- 다른사람들이 팀으로 개발하기 때문에
- 내가 빼먹는걸 기입하기 위해
문제점
- 안드로이드에서 사용하기 위한 Thread/Handler 메커니즘 제공 안됨
아씨 빌더 뭐지 ?
CookieManager cookieManager = new CookieManager()
OkHttpNetworkManager 클래스 싱글톤으로 만들기
okhttp, okhttpurlconnection 두개 dependency에 추가 하기 .
근데 이거 말고 https://github.com/franmontiel/PersistentCookieJar
project에 repositories라는 라이브러리 등록되있는 곳에 allproject에서 하면 전체 프로젝트에서 다 하고 싶으면 여기다 하고
이 앱에서만 하고싶으면 module.app에 repository에 추가 한다.
추가한 다음 synchronize 한다.
OKHttpClient client
OkHttpClient.Builder builder = new OKHttpClient();
Context context = null;
ClearableCookieJar cookieJar = new PersistentCookieJar(new SetCookieCache(), new SharedPrefsCookiePersistor(context));
이렇게 만든다음에
builder.cookiejar(cookieJar);
한번 받은 애를 캐싱하는 법.
File cacheDir = new File(context.getCacheDir(),"캐쉬디렉토리 이름 설정 static 상수로 지정해서 쓴다.")
if(!cacheDir.exists();){
cacheDir.mkdirs();
}
Cache cache = new Cache(cacheDir,10*1024*1024);
builder.cache(cache);
builder.connectTimeout();
builder.connectTimeout;
builder.writeTimeout;
client = builder.builder();
//// context= null 여기서 객체를 가져오기 위해서 생성자에서context를 선언하기 위한 방법도 있지만, Application을 상속받은 크래스에서 Context static변수를 선언하고 onCreate() 함수를 선언한다.
그리고
가장 중요한게 menifest에 MyApplication을 등록해줘야한다.
네트워크를 사용하는 시점에 null이 아니라는 것이 보장이 된다. 왜 ?
OkhttpRequest 클래스를 생성
Request를 담은 public abstract Request getRequest();
protected T parse(ResponseBody body); Okhttp 에 있는 객체이다.
OkHttp 활용.
일괄취소 .
Retrofit
Volley
이미지 불러오는거
Glide를 많이쓴다. default성능은 이게 좋다.
Picasso도 있다.
'Android' 카테고리의 다른 글
[18일차] 파일 (0) | 2016.08.10 |
---|---|
[17일차] Glide 네트워크 상태처리, NSD (0) | 2016.08.09 |
[16일차] 이미지 리퀘스트 (0) | 2016.08.08 |
[16일차] 구조화 2 (0) | 2016.08.08 |
[15일차] 네트워크 매니져, 네트워크 리퀘스트 (0) | 2016.08.05 |