Я новичок в разработке под андроид. Я хочу создать музыкальный проигрыватель, работающий по принципу клиент-сервер. Сейчас пытаюсь создать серверную часть. Я обнаружил, что могу добиться этого с помощью MediaBrowserServiceCompat
, как сказано в официальной документации здесь. Но когда я попытался использовать его в своем проекте, он говорит Unresolved reference: MediaBrowserServiceCompat
Хотя я настроил Android Studio на автоматический импорт необходимых библиотек, я попытался явно импортировать android.support.v4.*
, android.support.*
, androidx.*
, надеясь, что это сработает. но это не так, как оказалось. Поэтому я обратился за помощью к репозиторию UAMP (универсального музыкального проигрывателя Android) на GitHub. Я нашел оператор import androidx.media.MediaBrowserServiceCompat
в этот файл. Но я не смог найти ни одной библиотеки с таким названием
И почему в моем манифесте написано MediaPlaybackService must extend android.app.service
?
Как я должен его использовать? Спасибо!
Редактировать: я провел небольшое исследование и возился. Я попытался изменить имя службы в своем манифесте, а также имя связанного класса на MyMediaBrowserServiceCompat
, и волшебным образом это сработало (вроде). Итак, теперь мой вопрос: это нормальное поведение? Должно ли изменение имени службы действительно повлиять на эту ситуацию? И если это так, то как, черт возьми, он работает с другими именами (что-то не похожее на само имя класса) на чужих машинах? А во-вторых, теперь мой код говорит There's a cycle in the inheritance hierarchy for this type
Я искал в Интернете и нашел это. Итак, я знаю, что означает это сообщение, но я не могу понять, как его решить в этом случае. И мой манифест по-прежнему говорит то же самое: MyMediaBrowserServiceCompat must extend android.app.service