首页
学习
活动
专区
工具
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,每个单词的发音还会继续播放

1K10
  • 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编程实现播放音频的方法示例

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

    1.4K21

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

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

    1.6K10

    【Android笔记】Android Service 服务

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

    78510

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

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

    4K131

    Android Service 服务解说

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

    57730

    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
    领券