【问题标题】:Getting E/MediaPlayer: Error (1,-2147483648) error when trying to play a video from given URL获取 E/MediaPlayer:尝试从给定 URL 播放视频时出现错误 (1,-2147483648) 错误
【发布时间】:2021-08-14 17:48:16
【问题描述】:

我正在构建一个允许用户查看新电影及其预告片的应用程序,从 imdb API 查询数据

这是我调用VideoView的代码段

private fun setTrailer(trailer: Trailer){
        val trailerPlayer = view?.findViewById<VideoView>(R.id.trailerView)
        trailerPlayer?.setMediaController(MediaController(this.context))
        trailerPlayer?.setVideoPath(trailer.trailerUrl)
        trailerPlayer?.requestFocus()
        trailerPlayer?.start()
    }

我已经把它放在了onCreateView

override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        //some other functions
        getMovieTrailer()
        return inflater.inflate(R.layout.movie_detail_layout, container, false)
    }

这是我从 API 获得的 URL

Link 1

授予使用互联网的权限,我的 sdk 是 26,两个链接都是 https

我不断收到错误消息 E/MediaPlayer: Error (1,-2147483648) 和一个显示“无法播放此视频”的对话框

我也尝试过使用此链接,但遇到了同样的错误

Link 2

我找到了一些答案,但到目前为止没有一个有效

感谢任何提示

【问题讨论】:

    标签: android kotlin android-videoview


    【解决方案1】:

    trailerPlayer?.setVideoURI(Uri.parse(trailer.trailerUrl))

    【讨论】:

    • 我也试过了,还是一样的错误
    【解决方案2】:
        override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        //some other functions
        
        val view =  inflater.inflate(R.layout.movie_detail_layout, container, false)
    getMovieTrailer()
    return view
    }
    

    【讨论】:

    • 问题仍然存在并显示相同的错误消息,但感谢您的帮助
    • 分享课程
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多