2011.08.12(2)——— android MediaPlayer听筒播放
16lz
2021-12-04
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 sdk中找不到tools目录Android(安卓)sdkmanager tool
- Android(安卓)学习笔记 Contacts (三)Contacts 查找,增加,更新,删除联
- Android(安卓)Studio中断开SVN连接
- Android(安卓)Studio3.3部分断点不生效解决方法
- android 学习笔记
- android工程下运行main方法的配置方法
- Ubuntu Android开发环境配置
- Fedora 下配置 Android(安卓)开发环境
- edittext 随文字换行 而高度增加