글
Content Provider는 안드로이드 애플리케이션 간에 데이터를 공유할 수 있는 유일한 수단이다.
안드로이드 패키지들이 공통적으로 접근할 수 있는 데이터 저장소는 따로 없음
데이터를 제공하는 저장소를 한 곳으로 통일시키고 클라이언트 들이 쉽게 접근할 수 있도록 만들어 주는 데이터 레이어
같은 애플리케이션 안 뿐만 아니라 다른 애플리케이션의 액티비티나 서비스도 접근가능
ㅇ 제공가능 데이터 타입: 오디오, 비디오, 이미지, 연락처 등
ㅇ 다양한 데이터 저장 매커니즘 지원가능 파일, SQLite데이터베이스, 메모리 상의 해쉬맵 등
* 구현하기
ContentResolver resolver = getContentResolver();
Cursor cursor = resolver.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
int count = cursor.getCount();
Toast.makeText(this,"데이터갯수: "+count, Toast.LENGTH_LONG).show();
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
menifest.xml -> permissions -> add -> android.permission.READ_CONTACTS
까지 하면 menifest.xml 자동 추가됨 <user-permission> 이하내용...
정리하자면 ContentResolver라는 객체를 통해 query()메소드를 수행하여 데이터를 얻어 온다.
query()메소드의 리턴타입은 Cursor 이므로, 결국 ContentResolver를 통해 얻어 진 데이터는 Cursor의 객체형태로 저장된다.
'개발' 카테고리의 다른 글
[안드로이드]위젯과 이벤트 (0) | 2013.02.28 |
---|---|
[안드로이드]이벤트 처리 (2013.02.27) (0) | 2013.02.27 |
[안드로이드]안드로이드 서비스[Service](2013.02.21) (0) | 2013.02.19 |
[안드로이드]액티비티 수명주기와 SharedPreferences(2013.02.18) (0) | 2013.02.18 |
[안드로이드]액티비티와 인텐트 (0) | 2013.02.17 |
RECENT COMMENT