public class MainActivity extends Activity { private static final String TAG = "MainActivity"; private Button playBtn; private AudioTrack player; private int audioBufSize; private byte[] audioData; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); audioBufSize = AudioTrack.getMinBufferSize(8000, AudioFormat.CHANNEL_CONFIGURATION_STEREO, AudioFormat.ENCODING_PCM_16BIT); player = new AudioTrack(AudioManager.STREAM_MUSIC, 8000, AudioFormat.CHANNEL_CONFIGURATION_STEREO, AudioFormat.ENCODING_PCM_16BIT, audioBufSize, AudioTrack.MODE_STREAM); audioData = new byte[audioBufSize * 10]; for (int index = 0; index < audioBufSize * 10; index++) { audioData[index] = (byte)(index % 256); } // 创建播放器 playBtn = (Button)findViewById(R.id.PlayBtn); playBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { player.play(); player.write(audioData, 0, audioBufSize * 10); Log.i(TAG, "play finished"); } }); } }