Intereting Posts
Как переключить Android ListView пустой текст? Синглтоны против контекста приложения в Android? Разница между cocos2d-x и cocos2d-js Является ли Android requestLayout () правильным для анимации макета? Может ли кто-нибудь объяснить мне декларируемый XML-тег в этом примере и теорию его использования? Можно ли отлаживать javascript на родном браузере планшета Samsung? Как добавить панель действий из библиотеки поддержки в PreferenceActivity? API Android Maps требуется openGL es 2 FloatingActionButton расширяется в новую деятельность Обновление GridView / ListView без повторного заполнения ACCESS_FINE_LOCATION разрешает обновление с использованием функции-функции в мобильном приложении Ionic Инициализация приложений для Android SoundPool "AudioFlinger не смог создать трек, статус: -12" Предварительный просмотр камеры Android на двух режимах (предварительный просмотр камеры с несколькими объективами) Как запретить ScrollView перехватывать события щелчка / касания представления позади него?

Установка источника данных в исходный ID в MediaPlayer

В методе MediaPlayer.create можно использовать идентификатор для Raw-файла, но как его использовать в методе setDataSource?

Вы можете загружать необработанное аудио во входной поток и загружать его в MediaPlayer, как и обычный поток:

InputStream ins = getResources().openRawResource(R.raw.example); 

А затем следуйте руководству по потоковой передаче, например pocketjourney

Но это слишком сложно, так как вы можете просто позвонить

 mp = MediaPlayer.create(counterstrikesb.this, R.raw.example); 

См. Источник android.media.MediaPlayer

 AssetFileDescriptor afd = context.getResources().openRawResourceFd(resid); if (afd == null) return; mediaPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength()); afd.close(); 

Вы можете добавить try-catch в блок.

Перефразирование @ Ответ Kartik здесь Получить URI файла .mp3, хранящегося в папке res / raw в android

Если вы хотите получить URI ресурса, есть два способа:

  1. Использование имени ресурса

Синтаксис: android.resource: // [package] / [res type] / [res name]

Пример: Uri.parse ("android.resource: //com.my.package/drawable/icon");

  1. Использование идентификатора ресурса

Синтаксис: android.resource: // [package] / [resource_id]

Пример: Uri.parse ("android.resource: //com.my.package/" + R.drawable.icon);

Это были примеры получения URI любого файла изображения, хранящегося в папке с возможностью переноса. Аналогичным образом вы можете получить URI папки res / raw.

ИМО второй вариант будет предпочтительнее, так как переименование ресурса и т. Д. Можно легко реорганизовать.

Установите источник данных следующим образом:

 CONSTANTS.RES_PREFIX = "android.resource://com.my.package/" 
 mp.setDataSource(getApplicationContext(), Uri.parse(CONSTANTS.RES_PREFIX + R.raw.id));