web-dev-qa-db-ja.com

インスタンスの作成時にMediaPlayerがNOT presentエラーをスローするのはなぜですか?

MediaPlayer LogCatのインスタンスを作成すると、次のエラーが表示されます。

QCMediaPlayer mediaplayerが存在しません

それはなぜですか、それは正常ですか?

サンプル:

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();
    }
}
33
antifriz

プラットフォームがQCMediaPlayerをサポートしていないことを意味します。 QCMediaPlayerは、互換性のあるSnapdragonビルドでDASHプロトコルのMPD属性を取得および設定するための拡張APIとインターフェイスを提供します。そのため、このエラーは通常の場合のメディアの再生には影響しません

詳細については、次のソースを確認してください。

QCMediaPlayer.Java

18
alexuz

これが起こっている「なぜ」に対する答えではないことを知っていますが、誰かがそれを動作させたい場合(少なくとも私にとっては動作しました)、新しいインスタンスと設定を作成することなくMediaPlayerを初期化できますデータソース。ただし、staticメソッドcreateを使用して作成します。

MediaPlayer player = MediaPlayer.create(this, Uri.parse(sound_file_path));

または

MediaPlayer player = MediaPlayer.create(this, soundRedId, loop);
8
MikeL

mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);を追加すると、問題が解決しました。最初は他のタイプで試しましたが、うまくいきませんでした。

3
Harsh Chhabra

奇妙なことに、これを修正するように思われたのは、Android Studio。

1
Shawn Lauzon

私はこのコードを追加しました:

MediaPlayer mediaPlayer = MediaPlayer.create(MainActivity.this,R.raw.menumusic);
mediaPlayer.start();

そして、それは機能していませんでしたが、私にとってこれを修正すると思われたのは、restarting Android Studioです。
これが誰かの助けになることを願っています。

1
Roga Men