Неразрешенная ссылка: ExoPlayerFactory в ExoPlayerFactory.newSimpleInstance и несоответствие типов: предполагаемый тип —Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Неразрешенная ссылка: ExoPlayerFactory в ExoPlayerFactory.newSimpleInstance и несоответствие типов: предполагаемый тип —

Сообщение Anonymous »

после обновления до последней версии сборки ExoPlayer, т.е. «2.18.1»,
ExoPlayerFactory.newSimpleInstance, показывающей неразрешенную ошибку ссылки,
Хотите переформатировать эту функцию инициализации в последняя версия exoplayer
без изменения логики
получения скрытых ошибок в работе

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

 private fun initializeExoPlayer(soundFile: String): ExoPlayer {
// create the player
val exoPlayer = ExoPlayerFactory.newSimpleInstance(
DefaultRenderersFactory(this), DefaultTrackSelector()
)

// load the media source
val dataSource = DefaultDataSourceFactory(this,
Util.getUserAgent(this, this.getString(R.string.app_name)))
val mediaSource = ProgressiveMediaSource.Factory(dataSource)
.createMediaSource(Uri.parse("asset:///$soundFile"))

// load the media
Log.d("MAIN", "loading $soundFile")
exoPlayer.prepare(mediaSource)
// loop indefinitely
exoPlayer.repeatMode = Player.REPEAT_MODE_ALL

return exoPlayer
}
ошибки
  • Неразрешенная ссылка: ExoPlayerFactory
  • Несоответствие типов: предполагаемый тип — Ури! но MediaItem ожидался
    в

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

     .createMediaSource(Uri.parse("asset:///$soundFile"))
  • Переменная ожидается в

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

exoPlayer.repeatMode = Player.REPEAT_MODE_ALL
Снимок экрана
Изображение

gradle :

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

// ExoPlayer
api "com.google.android.exoplayer:exoplayer-core:2.18.1"
api "com.google.android.exoplayer:exoplayer-ui:2.18.1"
api "com.google.android.exoplayer:extension-mediasession:2.18.1"
ПРОБОВАНО
после многократного поиска
изменил следующую функцию на ->

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

  private fun initializeExoPlayer(soundFile: String): ExoPlayer {

// create the player
val exoPlayer = ExoPlayer.Builder(this).build()

// load the media source
val dataSource = DefaultDataSourceFactory(this,
Util.getUserAgent(this, this.getString(R.string.app_name)))

val firstAudioUri = Uri.parse("assets:///$soundFile")
val mediaSource = MediaItem.fromUri(firstAudioUri)

// load the media
Log.d("MAIN", "loading $soundFile")
exoPlayer.addMediaItem(mediaSource)
exoPlayer.prepare()
// loop indefinitely
exoPlayer.repeatMode = Player.REPEAT_MODE_ALL

return exoPlayer
}
все указанные ошибки исчезли, но
медиафайлы не воспроизводятся, а переменная dataSource никогда не используется.
Любая помощь будет очень кстати. оценил.

Подробнее здесь: https://stackoverflow.com/questions/740 ... stance-and
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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