본문 바로가기

Android

[16일차] 구조화 2

NetoworkManager


Network에서 데이터를 가져와서 넘겨주는 역할을 담당하는 Model class.



디자인 패턴은 singleton으로 !


보통 데이터를 얻어오는 애들은 Manager라고 한다. 



Singleton으로 대개 만든다. 


멀티스레드 환경에서 동시에 접근할 수 있기 때문에 이걸 쓴다. 



성능 이슈 때문에 if(instance ==null) 을 바깥에 한번 더 해준다. 


객체가 생성 되있을 때는 그냥 통과하게 만들어야 함으로 if 문을 한번 더 넣는다. 



Thread 이슈

Retry

일시적으로 연결이 안됬을 때, 다시시도하는 걸 보낸다. 

Cancel

캔슬 처리 Retry 나 이런건 라이브러리를 쓸거기 때문에 안한다. 

캔슬처리를 안해주면 화면을 갱신하는 액티비티가 죽어서 Exception 이 난다. 

Cancel처리는 중요하다 얘가 예외가 발생하는데 Dialog를 띄우려면 Activity가 finish 상태이면 안된다. 

코드를 띄우면 문제가 된다. 그래서 끝날때, 더이상  띄우지말라는 cancel처리를 해줘야한다. 

재현이 안되지만 발생하는 상황에서 에러이다. 




'Android' 카테고리의 다른 글

[17일차] OkHttp 외 라이브러리들  (0) 2016.08.09
[16일차] 이미지 리퀘스트  (0) 2016.08.08
[15일차] 네트워크 매니져, 네트워크 리퀘스트  (0) 2016.08.05
[15일차]구조화  (0) 2016.08.05
[15일차] Proxy, Pasing  (0) 2016.08.05