如何将相册添加到MediaStore时如何判断

时间:2012-02-02 17:11:38

标签: android android-intent intentfilter

我想在每次将相册添加到Android MediaStore数据库时运行一些代码。我想我需要注册我的应用程序的意图,但不知道哪一个。有人知道吗?

1 个答案:

答案 0 :(得分:4)

关闭,但您注册以侦听对MediaStore内容URI的更改。例如,这样的事情可能在服务中实现:

getContentResolver().registerContentObserver(android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI, true, 
    new ContentObserver(new Handler()) {
        @Override
        public void onChange(boolean selfChange) {
            Log.d("ScratchService","External Media has been added");
            super.onChange(selfChange);
        }
    }
);
getContentResolver().registerContentObserver(android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI, true, 
    new ContentObserver(new Handler()) {
        @Override
        public void onChange(boolean selfChange) {
            Log.d("ScratchService","Internal Media has been added");
            super.onChange(selfChange);
        }
    }
);

这只会告诉您MediaStore何时更改,它不会告诉您添加或删除了什么。为此,您必须查询MediaStore。

我希望有一些用处。