2011.08.12(2)——— android MediaPlayer听筒播放
16lz
2021-01-23
2011.08.12(2)——— android MediaPlayer听筒播放
要实现听筒播放 只需在上一博客的基础上 增加AudioManager即可
增加上面3行代码即可
完整代码如下:
要实现听筒播放 只需在上一博客的基础上 增加AudioManager即可
am.setSpeakerphoneOn(false);setVolumeControlStream(AudioManager.STREAM_VOICE_CALL);am.setMode(AudioManager.MODE_IN_CALL);
增加上面3行代码即可
完整代码如下:
package com.lp;import java.io.IOException;import android.app.Activity;import android.content.Context;import android.media.AudioManager;import android.media.MediaPlayer;import android.media.MediaPlayer.OnCompletionListener;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {private Button play;private Button stop;private boolean isReleased= false;private boolean isPlaying= false;private MediaPlayer mMediaPlayer = new MediaPlayer();private AudioManager am; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); play = (Button)findViewById(R.id.main_play); stop = (Button)findViewById(R.id.main_stop); am = (AudioManager) getSystemService(Context.AUDIO_SERVICE); play.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {am.setSpeakerphoneOn(false);setVolumeControlStream(AudioManager.STREAM_VOICE_CALL);am.setMode(AudioManager.MODE_IN_CALL);try{if ( !isPlaying ){/* 装载资源中的音乐 */mMediaPlayer = MediaPlayer.create(MainActivity.this, R.raw.test2);isPlaying = true;isReleased = false;/* 设置是否循环 */mMediaPlayer.setLooping(true);//mMediaPlayer.setAudioStreamType(AudioManager.STREAM_VOICE_CALL);try{mMediaPlayer.prepare();}catch (IllegalStateException e){e.printStackTrace();}catch (IOException e){e.printStackTrace();}mMediaPlayer.start();}}catch (IllegalStateException e){e.printStackTrace();}mMediaPlayer.setOnCompletionListener(new OnCompletionListener() {// @Overridepublic void onCompletion(MediaPlayer arg0){mMediaPlayer.release(); am.setMode(AudioManager.MODE_NORMAL);}});} }); stop.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {if(isPlaying&&!isReleased){isReleased = true;mMediaPlayer.stop();mMediaPlayer.release();isPlaying = false;am.setMode(AudioManager.MODE_NORMAL);}}}); }}
更多相关文章
- Android 异步任务加载图片代码
- Android常用功能代码总结一
- android在java代码中绘制矩形框
- 用ant实现自动打包android(二) -- android代码混淆
- Android通过WebView调用 JS 代码
- Android下为自己定义WifiManager类wifi模块代码
- 如何提高android代码质量
- Android日志系统Logcat源代码简要分析