Android API에서는 데이터 베이스의 데이터 값이 변경되었을경우 Notifications을 제공해주는 ContentObserver라는 API를 제공하여 줍니다.
- 사용법 예제 소스입니다.
- 사용법 예제 소스입니다.
public static final Uri BOOKMARKS_URI = Uri.parse("content://browser/bookmarks"); // 해당 데이터베이스의 데이터값이 변경시에 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; }