2010-06-30 4 views
0

사용자가 음악을 일시 중지하고 다시 시작할 수 있도록 내 앱에 음악 컨트롤러를 추가하고 싶습니다. 또한 사용자가 노래 사이를 이동할 수 있다면 좋을 것입니다.Android, 기본 음악 플레이어를 제어하는 ​​방법

API에서 아무 것도 찾지 못했지만 헤드셋에서 사용할 수있는 것과 동일한 동작을 원합니다. 따라서 일부 API가 있어야합니다.

기본 미디어 앱을 제어하는 ​​방법에 대해 알고있는 사람이 누구입니까?

답변

2

나는 API 에서 아무것도 발견하지 않았습니다하지만 일부 API 권한이 있어야합니다 그래서 어떤 헤드셋을 사용할 수 입니다 같은 동작을 원하지?

아니요. 미디어 플레이어 앱이 헤드셋 이벤트에 응답합니다.

기본 미디어 앱을 제어하는 ​​방법에 대한 아이디어가있는 사용자는 누구입니까?

기본 미디어 앱인 AFAIK에 대해 게시 된 API가 없으며 Android SDK에 포함되어 있지 않습니다.

+0

앱을 개발하고이 컨트롤이 필요한 경우 BroadcastReceiver를 Activity에 등록 할 때 IntentFilter에서 우선 순위를 높게 설정하십시오. 그것은 작동합니다. 'filter.setPriority (Integer.MAX_VALUE);' – axcdnt

1

조금 늦었지만이를 찾는 사람들을 위해 게시했습니다.

long eventtime = SystemClock.uptimeMillis(); 
    Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null); 
    KeyEvent downEvent = new KeyEvent(eventtime, eventtime, 
    KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE, 0); 
    downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent); 
    sendOrderedBroadcast(downIntent, null); 

    Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null); 
    KeyEvent upEvent = new KeyEvent(eventtime, eventtime, 
    KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE, 0); 
    upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent); 
    sendOrderedBroadcast(upIntent, null); 

당신이 할 수있는 동일한 방법 : 당신은 재생하거나 현재 상태에 따라 음악을 일시 중지 코드를 다음 미디어 버튼을 누르면 된 시스템에 정렬 된 방송을 전송하고 released.The에 의해 기본 미디어 플레이어를 제어 할 수 있습니다 다음 또는 이전 트랙 버튼이 눌려 졌음을 시스템에 경고합니다.

관련 문제