소스는 아래와 같아요

어플 실행도중 전화가 오면 전화와 배경음악이 같이 들립니다.

제 생각에 아래 녹색으로 보이는 부분이 들어가는 위치가 잘못된듯하나

어디부분에 들어가야 될지 잘모르겠네요

전화오면 배경음악이 일시중지되었다가 통화가 끝나면 다시 play되게 만들고 싶습니다.

그게 어렵다면 그냥 전화가 오면 오플이 종료되는 식으로 만들고싶어요

고수님들 답변 기다릴게요

 

 

 

 

 

package com.camtherapist.bodyscanmeditation;


import android.app.Activity;
import android.content.Context;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.PowerManager;
import android.os.PowerManager.WakeLock;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;

public class bodyscanmeditation2 extends Activity {
 
 
 private static final boolean ON = false;
 MediaPlayer mp=null;
 TelephonyManager mTelMan;
 TextView mTextCall;
 boolean mResumeAfterCall;

 int curpos;
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_NO_TITLE); // TITLEBAR 제거
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main2);
       
        mp=MediaPlayer.create(bodyscanmeditation2.this,R.raw.meditation);
     
        Button button1 = (Button)findViewById(R.id.button1);
        button1.setOnClickListener(new Button.OnClickListener(){
         public void onClick(View v)
         {

          mp.start();

         }

        });
       

}
   

    @Override
 public void onBackPressed(){
     //curpos=mp.getCurrentPosition();
     mp.stop();
     mp.release();
     super.onBackPressed();
    }
 
   
    public void wakeLock(boolean flag) {
      Object wl = null;
  if(flag == ON) {
       if (wl == null) { // CPU on (Power Manager)
        Activity context = null;
    PowerManager pm = (PowerManager) context
        .getSystemService(Context.POWER_SERVICE);
        wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
        "wakelock");
        ((WakeLock) wl).acquire();
       }
      } else {
       if (wl != null) { // PowerManager Release
         ((MediaPlayer) wl).release();
         wl = null;
       }
      }

}
   
   
   
    PhoneStateListener mCallListener = new PhoneStateListener(){
        public void onCallStateChanged(int state, String incomingNumber){
         switch(state){
          case TelephonyManager.CALL_STATE_IDLE://통화중이 아닐 때
           break;
          case TelephonyManager.CALL_STATE_RINGING://전화벨 울릴 때
           mp.pause();

          case TelephonyManager.CALL_STATE_OFFHOOK://통화 중
           break;
         }
        }
       };
   
}