SD kartın çıkarılması için bir alıcı kaydettirmeye çalışıyorum ancak alıcım kod kartımı buraya yapıştırdığım SD kartın kaldırılmasını istemiyor. Alıcıyı oncreate() dosyasına kaydediyorum ve ondestroy işlevinde kayıtsız bırakıyorum. Eğer bir hata yaparsam lütfen bana bildirin.SD Kartla ilgili niyetleri yayın alıcımla almıyorum
void registerSDCardStateChangeListener() {
final String MEDIA_REMOVED = "android.intent.action.MEDIA_REMOVED";
final String MEDIA_UNMOUNTED = "android.intent.action.MEDIA_UNMOUNTED";
final String MEDIA_BAD_REMOVAL = "android.intent.action.MEDIA_BAD_REMOVAL";
// final String MEDIA_EJECT = "android.intent.action.MEDIA_EJECT";
final String MEDIA_EJECT = "android.intent.action.MEDIA_SCANNER_FINISHED";
mSDCardStateChangeListener = new BroadcastReceiver() {
@
Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equalsIgnoreCase(MEDIA_REMOVED) || action.equalsIgnoreCase(MEDIA_UNMOUNTED) || action.equalsIgnoreCase(MEDIA_BAD_REMOVAL) || action.equalsIgnoreCase(MEDIA_EJECT)) {
if (mMediaPlayer != null) {
stopPlayBack();
}
}
}
};
IntentFilter filter = new IntentFilter();
filter.addAction(MEDIA_REMOVED);
filter.addAction(MEDIA_UNMOUNTED);
filter.addAction(MEDIA_BAD_REMOVAL);
filter.addAction(MEDIA_EJECT);
registerReceiver(mSDCardStateChangeListener, filter);
}
Lütfen kodumda bir sorun varsa lütfen bana bildirin. Eğer niyet filtre
filter.addDataScheme("file");
bu ekleme
Cevabınız için çok teşekkür ederim, cevabınız için – Suman
@Justin Breitfeller + 1 çalıştı. –