ACTION_MEDIA_MOUNTED Намерение получено для SD-карты, но не для USB-накопителяAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 ACTION_MEDIA_MOUNTED Намерение получено для SD-карты, но не для USB-накопителя

Сообщение Anonymous »

В моем приложении для Android мне необходимо определить, когда внешнее запоминающее устройство подключено или удалено (SD-карта или USB-накопитель), чтобы я мог выполнить какое-либо действие, когда это произойдет.
Я реализован широковещательный приемник для целей ACTION_MEDIA_MOUNTED и ACTION_MEDIA_UNMOUNTED.
Если я вставляю или извлекаю SD-карту, она работает, но не работает в случае USB-накопителя. В чем может быть причина?
В onReceive MyBroadcastReceiver я пока просто регистрирую намеренное действие.
Это выглядит так:
`
override
fun onReceive(p0: Context?, p1: Intent?)
{
Log.d («Test», «Внутри onReceive»)
Log.d ("Test", "${p1?.action}")

`
`

Код: Выделить всё

    var receiver = MyBroadcastReceiver()
var filter   = IntentFilter ()

filter.addAction("android.intent.action.MEDIA_MOUNTED")
filter.addAction("android.intent.action.MEDIA_EJECT")
filter.addAction("android.intent.action.MEDIA_UNMOUNTED")

filter.addDataScheme("file")   // Doesn't work without this data scheme

registerReceiver (receiver, filter);
`
Я также пытался зарегистрировать прослушиватель Broadcast в файле манифеста вместо того, чтобы делать это программно, но результаты были такими же. Он работает для SD-карты, а не для USB-накопителя

Подробнее здесь: https://stackoverflow.com/questions/785 ... -usb-drive
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»