ManageCall.java 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package com.lyq.autocall;
  2. import android.content.Context;
  3. import android.media.AudioManager;
  4. public class ManageCall {
  5. static String TAG = "PhoneUtils";
  6. private Context mContext;
  7. private int currVolume;
  8. //打开扬声器
  9. public void OpenSpeaker() {
  10. try {
  11. AudioManager audioManager = (AudioManager) mContext
  12. .getSystemService(Context.AUDIO_SERVICE);
  13. audioManager.setSpeakerphoneOn(true);
  14. // audioManager.setMode(AudioManager.ROUTE_SPEAKER);
  15. currVolume = audioManager
  16. .getStreamVolume(AudioManager.STREAM_VOICE_CALL);
  17. if (!audioManager.isSpeakerphoneOn()) {
  18. audioManager.setSpeakerphoneOn(true);
  19. audioManager
  20. .setStreamVolume(
  21. AudioManager.STREAM_VOICE_CALL,
  22. audioManager
  23. .getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL),
  24. AudioManager.STREAM_VOICE_CALL);
  25. }
  26. } catch (Exception e) {
  27. e.printStackTrace();
  28. }
  29. }
  30. //关闭扬声器
  31. public void CloseSpeaker() {
  32. try {
  33. AudioManager audioManager = (AudioManager) mContext
  34. .getSystemService(Context.AUDIO_SERVICE);
  35. if (audioManager != null) {
  36. if (audioManager.isSpeakerphoneOn()) {
  37. audioManager.setSpeakerphoneOn(false);
  38. audioManager.setStreamVolume(
  39. AudioManager.STREAM_VOICE_CALL, currVolume,
  40. AudioManager.STREAM_VOICE_CALL);
  41. }
  42. }
  43. } catch (Exception e) {
  44. e.printStackTrace();
  45. }
  46. //Toast.makeText(context,"揚聲器已經關閉",Toast.LENGTH_SHORT).show();
  47. }
  48. }