[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경YoungSu Son항상 네트워크에 연결되어있지 않다는 가정으로, 앱의 아키텍처를 변경합니다.
앱을 실행시 로컬 DB의 데이터를 읽으며, 백그라운드 서비스에서 주기적으로 데이터를 긁어옵니다. (추후 gcm push로 변경합니다.)
데이터 삽입시 화면을 자동 갱신할려면? 어떠한 구조를 가져야 할까요?
그리고 view holder 패턴도 다룹니다.
반복적인 작업이 싫은 안드로이드 개발자에게Sungju Jin갑을병정 산업구조에서 갑돌이의 잦은 요구사항 변경 통보를 받아보셨을 겁니다. 사람들에게 받은 스트레스를 풀려고 '그래! 난 개발자닌깐' 하고 자리에 앉아서 코드를 짜는데 반복적인 작업을 하다보면 ‘내가 이걸 왜 하고 있나’ 라는 생각까지 들기도 합니다.
안드로이드 작업을 하다보면 다음과 같은 반복적인 작업을 하는 것을 느꼈을 겁니다.
반복적인 보일러(Boiler)코드를 줄일 수 있는 오픈소스를 소개하고자 합니다.
반복적인 작업이 싫은 안드로이드 개발자에게Sungju Jin갑을병정 산업구조에서 갑돌이의 잦은 요구사항 변경 통보를 받아보셨을 겁니다. 사람들에게 받은 스트레스를 풀려고 '그래! 난 개발자닌깐' 하고 자리에 앉아서 코드를 짜는데 반복적인 작업을 하다보면 ‘내가 이걸 왜 하고 있나’ 라는 생각까지 들기도 합니다.
안드로이드 작업을 하다보면 다음과 같은 반복적인 작업을 하는 것을 느꼈을 겁니다.
반복적인 보일러(Boiler)코드를 줄일 수 있는 오픈소스를 소개하고자 합니다.
2. Content Provider
• 모든 패키지가 접근할 수 있는 공통된 저장
공간이 없음
• Content Provider만이 어플리케이션 간에
데이터를 공유할 수 있는 유일한 방법
– 예 : 주소록, 전화 목록 등은 한 앱이 관리하지
않음…
3. Content Provider
• getContentResolver()
– 데이터 추가 ,수정, 삭제를 위한 공통적인 인터
페이스
• query() insert() update() delete() 등..
• notifyChange()를 통하여 데이터의 변화를 옵져버
들에게 통지 할 수 있음
4. Content Provider
• URI
– 각각의 Content Provider는 그 데이터 집합을
고유하게 식별하는 하나의 public 적인 URI 를
제공
1 2 3 4
– 예): content://myprovider/Data/13
• 1 : 표준 접두어 Content Provider라고 알린다.
• 2 : Content Provider의 이름
• 3 : Path부분
• 4 : 레코드 값
6. Data Adapter
• 데이터와 뷰 사이에 존재하는 다리 역할
• 데이터를 다양한 형태의 뷰로 보여주기 위한 객체
– CursorAdapter: Cursor(DB Query 데이터를 담는다.)로부터 데이
터를 selection 위젯에 공급하는 adapter.
Content Provider 가 제공하는 data를 위젯에 연결할 때도 사용함.
– SimpleAdapter: data를 XML Layout 파일에 지정된 View형태로 표
하는데 사용 함.
– ActivityAdapter, ActivityIconAdapter: 특정 Intent 발생 시 실행될
activity의 이름이나 아이콘 목록을 위한 adapter.
– ArrayAdapter: array나 java.util.List에 저장된 data를 위한 adapter.