2012-04-19 1 views

답변

1

시스템은 다양한 이벤트에 대한 인 텐트를 브로드 캐스트합니다.이 중 많은 이벤트는 SD 카드 (외부 미디어)의 상태 변경에 관한 것입니다.

따라서 적절한 인 텐트를 위해 BroadcastReceiver를 설정하기 만하면됩니다. 참조 용으로 this 페이지를 확인하십시오. ACTION_MEDIA_ * 작업을 찾고 있습니다.

+0

누군가가 안드로이드에 새로운 API를 추가하는 방법을 알고 있습니까? – jxgn

5

당신은

public class MyReceiver extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
    //If SD Card is Removed it will Come Here 

      //Intent service = new Intent(context, WordService.class); 
    //context.startService(service); 
} 
} 

안드로이드 매니페스트 코드 아래처럼 파일 당신의 수신기를 추가 제거 SD 카드에 대한 방송 수신기를 사용할 필요가있다.

<receiver android:name="MyReceiver " > 
     <intent-filter> 
      <action android:name="android.intent.action.MEDIA_EJECT" /> 
     </intent-filter> 
    </receiver> 
+0

입니까? MEDIA_REMOVED 또는 MEDIA_EJECT ?? 매니페스트 파일에 모든 권한을 포함해야합니까 ??? – jxgn

+0

'ACTION_MEDIA_EJECT'는 사용자가 * SD 카드를 제거하려고 할 때 브로드 캐스트됩니다 (Windows에서는 "안전 장치 제거"와 유사). 'ACTION_MEDIA_REMOVED'는 카드가 실제로 제거 된 후에 보내집니다. 내가 아는 한 필요한 권한이 없습니다. –

+0

@TonythePony 어떤 방송을 처음으로 내 수신기에 추가 했습니까? 아니면 처음 수신 한 확인을 위해 다른 방송 수신기가 필요합니다 .'MEDIA_REMOVED' 또는 'MEDIA_EJECT'. – Herry