未知的mediaplayer不会在某个设备上播放声音

时间:2017-11-18 09:47:54

标签: android android-mediaplayer media-player device

我正在使用媒体播放器对象来播放.amr声音文件。现在模拟器上的所有内容和我测试应用程序的所有设备(总共5个设备)都可以。问题是当我尝试在huawei p8 lite上测试应用程序时,我得到media_unknown_error

我已经尝试在播放前检查媒体播放器是否未准备好,或者设备音量级别是否低,但似乎问题是其他问题。

这是我的错误

I/MediaPlayer: [HSM] stayAwake true uid: 10110, pid: 31906
E/MediaPlayer: error (1, -1010)
E/MediaPlayer: Error (1,-1010)
I/MediaPlayer: [HSM] stayAwake false uid: 10110, pid: 31906

1 个答案:

答案 0 :(得分:0)

试试这个。

package com.example.com.mak.mediaplayer;

import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.app.Activity;

public class MainActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    final MediaPlayer mpp = MediaPlayer.create(this, R.raw.red); //amr file in res/raw folder

    Button btnplay = (Button) findViewById(R.id.btnplay); //Play
    btnplay.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View vone) {
        mpp.start();
      }
    });

    Button btnpause = (Button) findViewById(R.id.btnpause); //Pause
    btnpause.setOnClickListener(new View.OnClickListener() {

      @Override
      public void onClick(View vtwo) {
        if (mpp.isPlaying()) {
          mpp.pause();
          mpp.seekTo(0);
        }
      }
    });
  }
}