일부 파일 브라우저에서 오디오 파일을 선택/공유 한 후 오디오 파일을 재생하려고합니다. 이렇게하려면 필터 의도를 사용하여 오디오 파일의 Uri를 가져옵니다. 우리에 따라 나는 그것을 할 수있다. Uri는 MediaPlayer에서 FileDescriptor를 여는 데 사용됩니다.기본 "다운로드"앱을 통해 공유 된 파일에 대한 임시 권한 만 있습니까?
앱을 다시 시작한 후에 사용할 수 있도록 Uri를 저장합니다. 그것은 안드로이드의 기본 다운로드 응용 프로그램을 제외한 모든 파일 브라우저에서 작동합니다. 다운로드 응용 프로그램에서 파일을 열면 다음과 같은 Uri가 나타납니다.
재생할 수 있습니다. 하지만 응용 프로그램을 다시 시작한 후에는 더 이상 동일한 URI를 재생할 수 없습니다. 이 권한에 대해 docs에서
java.lang.SecurityException: Permission Denial:
opening provider com.android.providers.downloads.DownloadStorageProvider from
ProcessRecord{160760b 3618:com.sample/u0a71} (pid=3618, uid=10071)
requires android.permission.MANAGE_DOCUMENTS or android.permission.MANAGE_DOCUMENTS
: 나는 예외가
이 권한은 플랫폼 문서 관리 응용 프로그램에 의해 요청해야합니다. 타사 앱에는이 권한을 부여 할 수 없습니다.
앱에 파일에 대한 임시 사용 권한 만 있다는 의미입니까? 이것에 대한 해결책이 있습니까?