2011-08-06 2 views
1

나는 SD 카드에서 미디어를 읽고 그것을 재생하는 응용 프로그램을 만들고 있습니다 .. 그러나 SD 카드가 물리적으로 제거되었을 때 어떤 이벤트가 있습니다 장치 또는 장치가 컴퓨터에 연결되고 sd 카드가 컴퓨터에 장착됩니다. sd 카드가 제거 될 때마다 알림이 생성되고 알림 표시 줄에 표시됩니다. 내 신청서가 해당 알림에 응답하기를 바랍니다. 예를 들어 사용자가 물리적으로 카드를 제거하거나 컴퓨터에 부착 할 때마다 응용 프로그램에 "sd card removed"와 같은 메시지가 표시되기를 바랍니다. 이러한 알림에 응답 할 수있는 방법이 있습니까?안드로이드 : SD 카드가 마운트 해제되었을 때를 알 수있는 방법

답변

2

해당 알림에 응답하고 싶습니다.

아니요. 당신은 그 Notifications을 만드는 데에도 사용되는 방송 Intents에 응답하고 싶습니다.

, ACTION_MEDIA_* 브로드 캐스트 동작 세트를 살펴보십시오.

+0

당신이 매우 잘 생각을 .. 당신이 좀 더 자세히 설명해 수 있습니다. 나는 안드로이드에서 꽤 초보자입니다. 당신이 도와 주시면 감사하겠습니다. 고맙습니다. .. – Farhan

1

나는이 질문을 오래된 것으로 알고 있지만 여기에서이 코드를 찾았습니다. 그래서 여기 있습니다.

<receiver android:name="it.myapp.receiver.OnMediaMountedReceiver" android:enabled="true"> 
    <intent-filter> 
     <action android:name="android.intent.action.MEDIA_MOUNTED" /> 
     <data android:scheme="file"/> 
    </intent-filter> 
</receiver> 

그런 다음 수신기 클래스를 생성 : 다음 manifest.xml에서

수신기 등록

public class OnMediaMountedReceiver extends BroadcastReceiver { 

private static final String TAG = OnMediaMountedReceiver.class.getSimpleName(); 

@Override 
public void onReceive(Context arg0, Intent intent) { 
    Log.i(TAG, "Media mounted!"); 
    if (intent != null && intent.getData() != null) { 
     Log.i(TAG, "Media path: " + intent.getDataString()); 
    } 
    } 
} 
관련 문제