Android API에서는 데이터 베이스의 데이터 값이 변경되었을경우 Notifications을 제공해주는 ContentObserver라는 API를 제공하여 줍니다.
- 사용법 예제 소스입니다.
- 사용법 예제 소스입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // 해당 데이터베이스의 데이터값이 변경시에 onChange() method가 호출됩니다. private ContentObserver bookmarksObserver = new ContentObserver( new Handler()) { @Override public void onChange( boolean selfChange) { super .onChange(selfChange); Log.d( "Boookmarks" , "onChanged : " + selfChange); } }; // ContentObserver에 해당 데이터 베이스의 URI를 등록합니다. private BookmarksManager(Context context) { this .context = context; this .contentResolver = context.getContentResolver(); contentResolver.registerContentObserver(BOOKMARKS_URI, true , bookmarksObserver ); } // 해당 Manager Class가 소멸될경우 꼭 ContentObserver에서 해제 시켜주어야 합니다 public static void destroy() { if (instance != null && instance.contentResolver != null && instance.bookmarksObserver != null ) { instance.contentResolver.unregisterContentObserver(instance.bookmarksObserver); } instance = null ; } |