2012-11-30 103 views
1

我写了一个非常简单的Android应用程序来测试Android中的MediaPlayer。应用程序适用于某些Android手机,但该应用程序无法在Galaxy Note上使用。Galaxy Note不能播放声音与MediaPlayer

MediaPlayer mediaPlayer; 

protected class SoundPlayer extends AsyncTask<Integer, Void, Void> { 
    @Override 
    protected Void doInBackground(Integer... params) { 
     mediaPlayer = new MediaPlayer(); 
     mediaPlayer.setAudioStreamType(AudioManager.STREAM_RING); 
     Uri uri = Uri.parse("android.resource://com.example.mediaplayertest/" + params[0]); 
     try { 
      mediaPlayer.setDataSource(getApplicationContext(), uri); 
      mediaPlayer.prepare(); 
      mediaPlayer.start(); 
      mediaPlayer.setLooping(false); 
     } catch (Exception e) { 
      Log.d("MPT", e.getMessage()); 
     } 
     return null; 
    } 
} 

public void startPlayingSound(View v) { 
    soundPlayer = new SoundPlayer(); 
    try { 
     soundPlayer.execute(R.raw.alarm); 
    } catch(Exception e) { 
     Log.d("MPT", e.getMessage()); 
    } 
} 

public void stopPlayingSound(View v) { 
    if(mediaPlayer.isPlaying()) { 
     mediaPlayer.stop(); 
    } 
} 

你知道原因吗?你有什么主意吗?这是Galaxy Note中的一个错误还是我遗漏了一些东西?

+0

您是否支持设备音量级别? – Blackbelt

+0

是的。设备不安静,音量级别为最大。 –

+0

在logcat中相关的任何音频? – Tim

回答

0

问题:MediaPlayer不会在Galaxy Note中播放WAV声音文件。我已经测试了Galaxy Gio,S和索尼Xperia上的应用程序,一切正常。在此基础上link

的典型错误如下:1。 文件路径是错误的。找不到目录或Url或Uri。 2.媒体文件出错,格式不兼容。 3.权限缺失。

最后我发现媒体格式不正确。更改媒体文件和“音符”播放声音!