У меня есть приложение, которое использует намерение ACTION_MEDIA_BUTTON с BroadcastReceiver для управления музыкальным проигрывателем.Пользователь нажимает кнопку на внешнем оборудовании, и он управляет музыкальным проигрывателем в приложении.Пользователь также может УДЕРЖИВАТЬ кнопку и изменить громкость.
Недавно я загрузил другое приложение, в котором используется кнопка гарнитуры, и оно перехватывает назначение кнопки мультимедиа из моего приложения!Поэтому, когда это другое приложение открыто и я нажимаю кнопку, другое приложение запустится, но мое приложение будет думать, что кнопка все еще нажата, поэтому она будет переключать громкость.
Подводя итог,
- мое приложение открыто, предполагается, что он является единственным слушателем намерений кнопок мультимедиа
- открывается другое приложение, оно также хочет быть единственным слушателемнамерений мультимедийной кнопки
- кнопка нажимается при открытых обоих приложениях, управление переходит к другому приложению
- мое приложение считает, что кнопка удерживается нажатой, поскольку оно потеряло управление при нажатии кнопки внизрежим (я думаю).Затем он запускает функции, которые я не хочу запускать, потому что он думает, что пользователь нажал кнопку.
Можно ли каким-то образом убедиться, что, пока мое приложение открыто, оно является единственным получателем этой кнопки мультимедиа?Могу ли я хотя бы проверить, не занял ли другое приложение, чтобы я мог предотвратить непредвиденное поведение?
Спасибо за любую помощь, у меня никогда не было приложений, которые раньше не играли красиво!