내 앱의 경우 전자 메일 첨부 파일 또는 파일 브라우저에서 파일을 열어서 백그라운드에서 처리하도록하고 싶습니다. 성공/실패 피드백 나는 브로드 캐스트 리시버에서 이러한 필터를 배치하면File/Content Intent-filters가 BroadcastReceiver에서 작동하지 않습니다. 활동 내역
가 <intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:mimeType="application/octet-stream"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<action android:name="android.intent.action.EDIT"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:mimeType="*/*"
android:host="*"
android:pathPattern=".*\\.mpb"
android:scheme="file"/>
</intent-filter>
하지만, 안드로이드는 겉으로는 그 필터의 존재를 인정하기를 거부 : 나는 다음과 같은 의도 필터 설정을 가지고있다. 액티비티 아래에 똑같은 필터를 배치하면 제대로 작동합니다. Android 인 텐트 필터의 제한 사항입니까?
지금은 Activity를 사용하여 파일을 처리하는 IntentService에 인 텐트를 전달하기 만합니다. 내 BroadcastReceiver가 수행했던 것과 동일합니다. 그런 다음 finish()
및 return;
을 호출하십시오. 이렇게하면 작업이 완료되지만 활동이 즉시 나타나서 사라지기 때문에 사용자 경험이 좋지 않습니다. 오히려 BroadcastReceiver가 작동하도록 할 것이기 때문에 실종 된 것이 있습니까?
고마워요. 제가 실제로 그랬던 의미있는 세부 사항에 대한 훌륭한 설명입니다. 매우 감사. – sigmabeta
@sigmabeta : 다행스럽게 도와 줬어 : -> –