2011.08.12(2)——— android MediaPlayer听筒播放

要实现听筒播放 只需在上一博客的基础上 增加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);}}});    }}

更多相关文章

  1. 2011.08.12(2)——— android MediaPlayer听筒播放
  2. 解决android sdk中找不到tools目录Android(安卓)sdkmanager tool
  3. Android(安卓)学习笔记 Contacts (三)Contacts 查找,增加,更新,删除联
  4. Android(安卓)Studio中断开SVN连接
  5. Android(安卓)Studio3.3部分断点不生效解决方法
  6. android 学习笔记
  7. android工程下运行main方法的配置方法
  8. Ubuntu Android开发环境配置
  9. Fedora 下配置 Android(安卓)开发环境

随机推荐

  1. 真正最正确的用BAT运行JAVA不显示DOS窗口
  2. Tkinter小部件上的垂直和水平滚动条
  3. 在Python中TypeError: object() takes no
  4. Python_面向对象_单例模式
  5. 用python计算20日均线数值
  6. Python添加默认模块搜索包路径
  7. python的list要打印中文字符
  8. Python——函数 8、可变长参数
  9. 任何人都可以提供更多的pythonic方式来生
  10. Mac环境下配置python3