lub*_*art 11 audio android soundpool
我需要在我的应用程序中播放一个简短的声音.我写了下面的代码,但我的三星手机上没有声音和奇怪的振动.但同时这段代码在我的android模拟器上运行良好.我的代码是:
package com.samplers;
import android.app.Activity;
import android.media.SoundPool;
import android.media.AudioManager;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class FixVibroActivity extends Activity {
/** Called when the activity is first created. */
private Button white;
private SoundPool spool;
private int soundID;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
spool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);
soundID = spool.load(this, R.raw.error, 1);
white = (Button)findViewById(R.id.whiteBtn);
white.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Sound();
}
});
}
public void Sound(){
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
float volume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
spool.play(soundID, volume, volume, 1, 0, 1f);
};
}
Run Code Online (Sandbox Code Playgroud)
请帮帮我解决这个问题!先感谢您!:)
您的音量控制或声音文件可能正常播放可能存在问题:如果您将Sound()功能更改为此功能,该怎么办?如果您的手机没有正确处理R.raw.error文件格式,但模拟器正确地执行它将非常奇怪.
public void Sound(){
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
float volume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
android.util.Log.v("SOUND","["+volume+"]["+spool.play(soundID, volume, volume, 1, 0, 1f)+"]");
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18801 次 |
| 最近记录: |