Android 애플리케이션 - 제인, 미 음악 플레이어에 전화 감청 추가

3313 단어 android음악.
Android 애플리케이션 - 제인, 미 음악 플레이어에 전화 감청 추가
2013년 6월 11일 제인·미 음악 플레이어 2단계 시작
1단계에서는 다음 기능을 완료합니다.
1. 음악 목록 자동 표시
2. 리스트를 클릭하여 음악 재생
3. 리스트를 길게 눌러 팝업 대화 상자
4. 음악을 멈춘다
5. 이전 음악
6. 다음 음악
7. 다음 노래 자동 재생
8. 싱글 루프
9. 모든 순환
10. 랜덤 플레이
2단계에서는 다음 기능을 준비합니다.
1. 가사 표시(가사 스크롤 기능 실현) 이전 블로그 이미 실현
2. 전보로 이 블로그가 말하고자 하는 내용을 감청하는 것은 매우 간단하다
3. 볼륨 조절
4. 앨범 이미지 가져오기
5. 가사
6. 온라인 음악 검색
7. 온라인 음악 다운로드
8. 재밌는 기능 구현-따돌림
9. 인터페이스 미화-앨범 그림자 구현
10. 좌우 인터페이스 전환 실현
11. 알림 표시줄에 재생 상태 보이기
12. 음악 재생을 위한 데스크톱 장치
잠시 이런 기능들을 생각해서 친구들이 조언이 있으면 직접 메시지를 남겨주시면 됩니다.
전화 상태 감청 기능 코드를 붙이기 전에 앱콘stant류도 붙여주세요. 이건 그냥 재생 제어 정보를 저장하는 거예요. 어떤 네티즌이 보자고 하니까 여기에 붙여주세요.
package com.wwj.sb.domain;

/**
 *      
 * @author wwj
 *
 */
public class AppConstant {
	public class PlayerMsg {
		public static final int PLAY_MSG = 1;		//  
		public static final int PAUSE_MSG = 2;		//  
		public static final int STOP_MSG = 3;		//  
		public static final int CONTINUE_MSG = 4;	//  
		public static final int PRIVIOUS_MSG = 5;	//   
		public static final int NEXT_MSG = 6;		//   
		public static final int PROGRESS_CHANGE = 7;//    
		public static final int PLAYING_MSG = 8;	//    
	}
}
좋아, 소서러의 제인, 미 음악 플레이어를 계속 보완해야 해. 좋은 응용 프로그램은 여러 가지 상황을 고려해야 하기 때문이다. 만약에 음악 플레이어에서 음악을 재생하는 과정에서 전화가 오면'영원히 너에게 전화하지 않을 사람'일 수도 있어. 만약에 이때 너의 음악이 무대 뒤에서 유유하게 재생된다면 너는 미칠 것 같아.영원히 전화 안 할 사람. 진짜 영원히 안 할 수도 있어.여기는 그냥 농담이에요. 그래서 이런 상황을 감안하면 전화가 오기만 하면 플레이어가 잠시 멈춰서 전화를 잘 할 수 있을 거예요.아래의 실현은 매우 간단하고 설명이 많지 않으며 직접 코드에 올린다.
1. 권한 추가
 <!--          -->
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
2. Telephony Manager 대상을 가져오고listen 방법으로 전보 상태를 감청합니다
//         
		TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); //       
		telManager.listen(new MobliePhoneStateListener(),
				PhoneStateListener.LISTEN_CALL_STATE);
3. 감청 클래스 구현
/**
	 * 
	 * @author wwj
	 *       
	 */
	private class MobliePhoneStateListener extends PhoneStateListener {
		@Override
		public void onCallStateChanged(int state, String incomingNumber) {
			switch (state) {
			case TelephonyManager.CALL_STATE_IDLE: //     
				Intent intent = new Intent(PlayerActivity.this, PlayerService.class);
				playBtn.setBackgroundResource(R.drawable.play_selector);
				intent.setAction("com.wwj.media.MUSIC_SERVICE");
				intent.putExtra("MSG", AppConstant.PlayerMsg.CONTINUE_MSG);	//      
				startService(intent);
				isPlaying = false;
				isPause = true;
				break;
			case TelephonyManager.CALL_STATE_OFFHOOK:	//    
			case TelephonyManager.CALL_STATE_RINGING:	//    
				Intent intent2 = new Intent(PlayerActivity.this, PlayerService.class);
				playBtn.setBackgroundResource(R.drawable.pause_selector);
				intent2.setAction("com.wwj.media.MUSIC_SERVICE");
				intent2.putExtra("MSG", AppConstant.PlayerMsg.PAUSE_MSG);
				startService(intent2);
				isPlaying = true;
				isPause = false;
				break;
			default:
				break;
			}
		}
	}

좋은 웹페이지 즐겨찾기