2011년 7월 12일 화요일

SD card mount/unmount broadcast 받기

참고(IntentFilter) : http://developer.android.com/reference/android/content/IntentFilter.html

sd card mount/unmount broadcast 를 받기 위해 BroadcastReceiver 를 만들어 등록했지만 broadcast 를 받을 수 없었다.

BroadcastReceiver 등록할 때 IntentFilter 에 data scheme 을 "file" 로 지정해 줘야 했다.

IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_MEDIA_MOUNTED);
filter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
filter.addDataScheme("file");


!) data scheme 을 지정한 경우 지정하지 않은 data scheme 에 대해서는 broadcast를 받지 못했다.
sd card mount/unmount broadcast 이외 다른 broadcast들을 같이 받게 BroadcastReceiver 클래스를 작성하였는데 data scheme 을 지정하고 나서부터 sd card 이외의 broadcast 를 받을 수 없었다. 해당 broadcast 들의 data scheme 을 알 수 없어서 BroadcastReceiver 를 따로 작성하여 BroadcastReceiver 를 여러개 등록하였다.

댓글 없음:

댓글 쓰기