gpt4 book ai didi

Android mediaPlayer - 有 "isPrepared()"或 "getStatus()"方法吗?

转载 作者:IT老高 更新时间:2023-10-28 23:22:22 24 4
gpt4 key购买 nike

我在使用 Android 的 MediaPlayer 时遇到问题。它似乎缺少重要的功能,主要是获取 MediaPlayer 的当前状态或了解它是否准备好的方法。我知道有准备好的监听器,但是 MediaPlayer 的持续时间比 Activity 长,所以当播放 Activity 恢复时,获取当前播放器状态会很好,无论它是否正在尝试加载媒体,是否加载媒体等. 是我遗漏了什么,还是我必须自己跟踪玩家状态?

其他很好的功能是 onPlayStateChanged() - 我目前必须手动跟踪播放状态。我做错了吗?

最佳答案

希望现在给出答案还为时不晚。 MediaPlayer类没有 isPrepared() 或 getStatus() 方法,您必须自己跟踪其状态。不过,这并不难。

MediaPlayer 类有一个非常有用的状态图。您应该根据该图实现您的服务。此外,如果您始终从同一个线程控制 MediaPlayer 对象,则很容易跟踪其状态,因此我建议您这样做。 prepareAsync() 方法是您必须处理的唯一异步方法,但您可以保留一个 bool 值,指示播放器正在准备中,从 prepareAsync() 调用直到 onPrepared() 为“真”叫。无论如何,如果您不小心从非法状态调用任何方法,您总是可以实现 onError 并捕获 IllegalStateException 以避免崩溃。

尽管如此,media playback guide对我帮助很大。

关于Android mediaPlayer - 有 "isPrepared()"或 "getStatus()"方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11876229/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com