Intereting Posts
Android Удалить файл с помощью DDMS Странное мигание на клиенте удаленного управления блокировкой при остановке его от самого клиента Ошибка Google Maps Api Key android Как настроить Travis-CI для библиотеки Android? Как проверить значения TextInput в реакции native? Как отправить пользовательские объекты данных с помощью Intents в Android? Как очистить TextInput фокус в React Native? (Android) Конструкция обратной совместимости для дизайна материалов: colorAccent требует API уровня 21 при использовании appcompat7 In-App-Billing v3, когда нет сети BadParcelableException – трансляция трансляции Rewceiver NullPointerException в анимации исчезновения RecyclerView из поддержки v.23.2.0 Почему родные потоки ведут себя по-разному, когда приложение находится в фоновом режиме? ImageView в ListView, который расширяет максимальную ширину Как получить правильное количество байтов, отправленных и полученных в TrafficStats? Android. Если WebView отображается дополнительно, buggus, View также создается

Как получить InputStream для песни, купленной в магазине GooglePlay?

Я пытаюсь воспроизвести музыку из игрового магазина google с помощью аудиотреков. Я пытаюсь получить InputStream для песни, купленной в google play, используя getContentResolver().getInputStream(contenturi) но это приводит к "FileNotFoundException" . «Contenturi», который я использую, был получен из предыдущего запроса поставщику контента: com.google.android.music.MusicContent / audio. Этот запрос возвратил строку для каждой песни, которую я купил из игры Google, а также песни, которые у меня были на моей SD-карте, которые не были приобретены в Google Play. Для каждой строки я построил url для конкретной песни, добавив ее Id, например

content://com.google.android.music.MusicContent/audio/10. Когда этот url ссылался на файл на моей SD-карте, я смог получить входной поток для него. Однако, когда речь идет о песне, приобретенной в Google Play, запрос на входной поток выходит из строя с исключением FileNotFoundException.

Как правило, стандартный медиаплеер для Android имеет название «openAssetFileDescriptor» в редакторе контента, а не «getInputStream», однако, когда я это пробовал, он также потерпел неудачу с FileNotFoundException для песен из игры Google, но работал для песен на моей SD-карте.