首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当MediaPlayer无法播放源码并且正在重试时,如何立即获取回调?

当MediaPlayer无法播放源码并且正在重试时,可以通过设置MediaPlayer的OnInfoListener来获取回调。OnInfoListener是MediaPlayer的一个回调接口,用于监听MediaPlayer的信息事件。在重试过程中,可以通过该接口获取到重试相关的信息。

具体步骤如下:

  1. 创建一个MediaPlayer对象,并设置OnInfoListener回调接口。
  2. 在OnInfoListener的onInfo()方法中,判断是否是重试相关的信息事件。
  3. 如果是重试相关的信息事件,可以立即获取回调并进行相应的处理。

以下是一个示例代码:

代码语言:java
复制
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
    @Override
    public boolean onInfo(MediaPlayer mp, int what, int extra) {
        if (what == MediaPlayer.MEDIA_INFO_BUFFERING_START) {
            // 当MediaPlayer开始重试时,获取回调并进行处理
            // TODO: 处理重试相关的逻辑
        }
        return false;
    }
});

// 设置要播放的源码
mediaPlayer.setDataSource("your_source_url");
// 准备MediaPlayer
mediaPlayer.prepareAsync();

在上述代码中,通过设置MediaPlayer的OnInfoListener回调接口,可以监听到MediaPlayer的信息事件。当MediaPlayer开始重试时,会触发onInfo()方法,并通过what参数传递MediaPlayer.MEDIA_INFO_BUFFERING_START信息。在该方法中,可以立即获取回调并进行相应的处理。

对于推荐的腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体的云计算品牌商,无法给出具体的推荐产品和链接。但腾讯云作为一家知名的云计算服务提供商,提供了丰富的云计算产品和解决方案,可以根据具体需求在腾讯云官网进行查找和了解。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

android学习笔记----来看看MediaPlayer释放资源release()的使用

查阅 MediaPlayer 文档 你会发现这个方法setOnCompletionListener,这里的说明指出该方法允许你注册一个回。... MediaPlayer 播放完成,onCompletionListener 对象的onCompletion() 方法将被调用。...方法,使用了一个异步回 MediaPlayer 播放完歌曲后,我会获得通知,在此期间,我可以执行其他操作,例如对用户的其他按钮点击操作做出响应,并等待着获得回。...除了持有不必要的资源(例如内存和编解码器实例)之外,不再需要MediaPlayer对象,若没有立即调用此方法也可能导致移动设备的电池持续消耗,如果设备上不支持同一编解码器的多个实例,没有调用release...现在如果我播放某个发音,然后通过点按主屏幕按钮立即离开该应用,会立即停止播放发音,因为我添加了这段 onStop 代码,如果没有onStop()里面添加的逻辑代码,那么离开该 Activity,每个单词的发音还会继续播放

99110
  • 2016级移动应用开发在线测试14-MediaPlayer

    ┋ 因为MediaPlayer一直操作的是一个流媒体,所以无可避免的可能一段流媒体资源,前半段可以正常播放,而中间一段因为解析或者源文件错误等问题,造成中间一段无法播放问题,需要我们处理这个错误,否则会影响...您的回答为:MediaPlayer.OnClickListener: 点击接口。该接口中定义了一个回方法,点击事件发生该方法。...该接口定义了一个回方法,该方法在媒体播放出现信息或者警告该方法。 ()MediaPlayer.OnPreparedListener:准备播放接口。...该接口中定义了一个回方法,字幕的需要显示该方法。 ()MediaPlayer.OnClickListener:点击接口。该接口中定义了一个回方法,点击事件发生该方法。 9. ...()Idle 状态:使用new()方法创建一个MediaPlayer对象或者调用了其reset()方法,该MediaPlayer对象处于idle状态。

    83130

    Android 媒体开发之MediaPlayer状态机接口方法实例解析

    硬件加速组件 单态组件等都是唯一性的资源, 如果不释放掉, 之后的 Mediaplayer无法正常运行; — 无法进行状态转换 : End 状态代表 MediaPlayer 生命周期结束, 在此状态不能转换成其它状态了...; — 接口作用 : 该接口定义了一个回方法, 该方法在媒体播放出现信息或者警告该方法; 接口方法介绍 : — 接口方法 : public abstract boolean onInfo (...检查 MediaPlayer 是否在播放 方法名称 : public boolean isPlaying (); 方法解析 : 检查 MediaPlayer 是否正在播放; 方法的有效状态和无效状态 :...和 播放载体 之后调用该方法; — 适用情况 : 对于 流媒体 来说, 调用该方法立即返回, 要比 阻塞等待缓冲足够的数据在播放比较好; 方法的有效状态和无效状态 : 只有在 Initialized...listener); 方法解析 : 注册一个媒体资源准备播放的监听器; (6) 注册搜寻操作监听器 方法名称 : public void setOnSeekCompleteListener (

    2.5K42

    MediaPlayer(总结)--从对象生命周期理解MediaPlayer状态

    1.创建播放器 new mediaplayer实例 设置 mediaplayer --> jni --> MediaPlayerlistener 2.reset() 销毁MediaPlayerService...new NuPlayer实例 设置 NuPlayer 回 MediaPlayerService的回函数notify notify回函数是在createPlayer一起作为参数传递过去的。...实例只能有一个NuPlayer实例和对应的回链路 Prepared ,Preparing 解析视频源,demux, 创建decode,建立视频播放管道(不同播放器会有不同的实现方式) Started...可以理解prepare创建的播放器管道销毁,需要重新建立才能播放 End release()被调用后,所有的资源会被释放,处于End状态。...服务端 binder通讯实例mPlayer 销毁mediaplayer实例 Error 由于某些原因,比如无法识别音视频封装格式,poorly interleaved audio/video,分辨率过高

    1K20

    Android多媒体之认识MP3与内置媒体播放MediaPlayer

    某个旋律想起,还会不会浮现某个风景,某个人……, 今天全程单曲播放——梁静茹-勇气(献上频谱) ? 勇气.png 主要任务:SD卡音乐、网络音频流的播放及控制 ?...*/ public void start() { //未初始化和正在播放return if (!...*/ public boolean isPlaying() { //未初始化和正在播放return if (!...pre_100 -> { musicPlayer.seekTo(pre_100); }); 拖动就这么简单... ---- 六、其他的一些监听方法+网络音频流 1.常用的几个监听: //装载流媒体完毕的时候回...刚才是通过create()创建的MediaPlayer源码中create()调用了prepare() 而想要异步准备,需要自己定义MediaPlayer,由于异步准备,而且有回,就不用开线程了

    1.9K61

    Android service ( 一 ) 三种开启服务方法

    先后调用了onCreate()、onStart()这两个方法;停止Service,则执行onDestroy()方法。...c 有一个正在调用生命周期的回函数的service(如onCreate()、onStar()、onDestroy()) d 它有一个正在运行onReceive()方法的广播接收对象。...只有少数的前台进程可以在任何给定的时间内运行,销毁他们是系统万不得已的、最后的选择——内存不够系统继续运行下去。...3 一个服务进程是一个通过调用startService()方法启动的服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心的,比如后台播放音乐或网络下载数据。...4 一个后台进程就 是一个非当前正在运行的activity(activity的onStop()方法已经被调用),他们不会对用户体验造成直接的影响,没有足够内存来运 行前台可见程序时,他们将会被终止。

    3.6K10

    Android Service 服务(一)—— Service

    先后调用了onCreate()、onStart()这两个方法;停止Service,则执行onDestroy()方法。...c 有一个正在调用生命周期的回函数的service(如onCreate()、onStar()、onDestroy())         d 它有一个正在运行onReceive()方法的广播接收对象。...只有少数的前台进程可以在任何给定的时间内运行,销毁他们是系统万不得已的、最后的选择——内存不够系统继续运行下去。...3 一个服务进程是一个通过调用startService()方法启动的服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心的,比如后台播放音乐或网络下载数据。...4 一个后台进程就是一个非当前正在运行的activity(activity的onStop()方法已经被调用),他们不会对用户体验造成直接的影响,没有足够内存来运行前台可见程序时,他们将会被终止。

    1.2K30

    android学习笔记----关于音频焦点Audio Focus

    失去焦点,监听者可以使用焦点变化信息来决定失去焦点采用的行为。例如,音乐播放器可以选择降低其音乐流(回避)的音量以用于瞬时焦点损失,否则暂停。...对于这里的例子,我们可以暂停音频文件,并且下次从头播放。...别的应用程序放弃焦点(调用abandonAudioFocus),您会收到回(AUDIOFOCUS_GAIN)。此时,您可以将音量恢复到正常水平或重新开始播放。...永久失去焦点 如果音频焦点丢失是永久性的(AUDIOFOCUS_LOSS),另一个应用程序正在播放音频。您的应用应立即暂停播放(或者释放资源),因为它不会收到AUDIOFOCUS_GAIN回。...某项内容被点击后,我希望使用 AudioManager 来请求 Audio Focus,然后再设置 MediaPlayer播放声音。所以在ListView的点击监听事件里面操作。

    1.6K10

    Android编程实现播放音频的方法示例

    调用这个方法后的 MediaPlayer 对象无法播放音频。 release() 释放掉与 MediaPlayer 对象相关的资源。...后 面 依 次 用 了 setDataSource()方法和 prepare()方法为 MediaPlayer 做好了播放前的准备。 接下来我们看一下各个按钮的点击事件中的代码。...点击 Play 按钮时会进行判断,如 果当前 MediaPlayer 没有正在播放音频,则调用 start()方法开始播放。...点击 Pause 按钮时会 判断,如果当前 MediaPlayer 正在播放音频,则调用 pause()方法暂停播放。...点击 Stop 按钮 时会判断,如果当前 MediaPlayer 正在播放音频,则调用 reset()方法将 MediaPlayer 重置为刚 刚创建的状态,然后重新调用一遍 initMediaPlayer

    1.4K21

    【Android笔记】Android Service 服务

    先后调用了onCreate()、onStart()这两个方法;停止Service,则执行onDestroy()方法。...c 有一个正在调用生命周期的回函数的service(如onCreate()、onStar()、onDestroy()) d 它有一个正在运行onReceive()方法的广播接收对象。...只有少数的前台进程可以在任何给定的时间内运行,销毁他们是系统万不得已的、最后的选择——内存不够系统继续运行下去。...3 一个服务进程是一个通过调用startService()方法启动的服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心的,比如后台播放音乐或网络下载数据。...4 一个后台进程就是一个非当前正在运行的activity(activity的onStop()方法已经被调用),他们不会对用户体验造成直接的影响,没有足够内存来运行前台可见程序时,他们将会被终止。

    78310

    Android Service 服务解说

    先后调用了onCreate()、onStart()这两个方法;停止Service,则执行onDestroy()方法。...c 有一个正在调用生命周期的回函数的service(如onCreate()、onStar()、onDestroy()) d 它有一个正在运行onReceive()方法的广播接收对象。...只有少数的前台进程可以在任何给定的时间内运行,销毁他们是系统万不得已的、最后的选择——内存不够系统继续运行下去。...3 一个服务进程是一个通过调用startService()方法启动的服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心的,比如后台播放音乐或网络下载数据。...4 一个后台进程就是一个非当前正在运行的activity(activity的onStop()方法已经被调用),他们不会对用户体验造成直接的影响,没有足够内存来运行前台可见程序时,他们将会被终止。

    57730

    android视频系列:视频解码篇--android上视频播放的实现

    播放,从容器里取出一张图片,放到屏幕上显示,隔一点间后,再从容器里取出下一张图,放到屏幕上。按次序把图片一张一张显示到屏幕上,等到最后一张也显示到屏幕上后,播放就完成了。...让我们来看看,如何使用GLSurfaceView来实现视频的播放。 首先创建好GLSurfaceView。 ?...onDrawFrame()的调用发生在绘制当前帧。每一次要显示的内容,都在这个方法里完成opengl渲染。 下面我们来看具体如何定义VideoRenderer,来实现视频播放。 ?...为该SurfaceTexture设置数据获取的回onFrameAvailableListener。SurfaceTexture获取到数据,该回就会被执行。...MediaPlayer就会把解码数据源源不断地放入SurfaceTexture中了。 放入到SurfaceTexture中的数据,我们要如何来使用呢?

    4K131

    Android Service 服务(一)—— Service

    先后调用了onCreate()、onStart()这两个方法;停止Service,则执行onDestroy()方法。...onDestroy(),停止并释放mediaPlayer音乐资源,假设执行context.stopService()时调用此方法 4、Activity中,onClick()函数中close与exit...c 有一个正在调用生命周期的回函数的service(如onCreate()、onStar()、onDestroy()) d 它有一个正在执行onReceive()方法的广播接收对象。...仅仅有少数的前台进程能够在不论什么给定的时间内执行,销毁他们是系统万不得已的、最后的选择——内存不够系统继续执行下去。...4 一个后台进程就是一个非当前正在执行的activity(activity的onStop()方法已经被调用),他们不会对用户体验造成直接的影响,没有足够内存来执行前台可见程序时,他们将会被终止。

    1.2K10

    YouTube开源播放器中文使用指南

    对于自定义播放器非常友好,里面将很多模块抽象成独立的组件可供使用者自行定制,当然官方也提供了一些默认的实现。如果你正在开发视频类功能,强烈推荐你尝试一下ExoPlayer。...可以根据用户的需求方便的对播放器行为进行定制和扩展,ExoPlayer中的很多组件都支持自定义和扩展。 支持播放视频列表,并且可以支持对视频的裁剪、合并,以及循环播放设置。...所以需要播放媒体资源,你得先创建一个和资源相关的MediaSource对象,然后通过ExoPlayer.prepare方法将封装的对象传入。...播放准备好了以后,我们可以通过setPlayWhenReady方法控制播放,当然ExoPlayer也提供了丰富的API去控制播放的过程。...既然是Yutube使用的播放器,如何强大读者自行去挖掘,也可挖掘源码中的设计架构。

    3.9K20
    领券