创建MediaPlayer实例时,LogCat会显示以下错误:
QCMediaPlayer媒体播放器不存在
为什么会这样,是否正常?
样品:
package com.example.testapp;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
public class MainActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MediaPlayer mediaPlayer = new MediaPlayer();
}
}
答案 0 :(得分:18)
这意味着您的平台不支持QCMediaPlayer。 QCMediaPlayer提供扩展的API和接口,以在兼容的Snapdragon构建中获取和设置DASH协议的MPD属性。因此,此错误不应影响正常情况下的媒体播放
检查此来源以了解更多详情:
答案 1 :(得分:8)
我知道这不是“为什么”这种情况发生的答案,但如果有人想让它发挥作用(至少对我来说有效),你可以通过创建一个新实例来初始化MediaPlayer
并设置数据源,但使用static
方法create
:
MediaPlayer player = MediaPlayer.create(this, Uri.parse(sound_file_path));
或
MediaPlayer player = MediaPlayer.create(this, soundRedId, loop);
答案 2 :(得分:3)
添加mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
解决了我的问题。最初我尝试过其他类型,但它没有用。
答案 3 :(得分:1)
奇怪的是,似乎为我解决的问题是重启Android Studio。然后我在调试模式下运行它开始工作,并且从那以后没有看到错误。怪异!