>Java >권한이 있는데도 내 애플리케이션에 대한 디렉터리나 파일을 만들 수 없습니다.

권한이 있는데도 내 애플리케이션에 대한 디렉터리나 파일을 만들 수 없습니다.

王林
王林앞으로
2024-02-22 13:28:14394검색

PHP 편집기 Strawberry는 Java 프로그래밍에 대한 일반적인 질문에 답변합니다. 권한이 있어도 애플리케이션에 대한 디렉터리나 파일을 만들 수 없습니다. 이 문제는 운영체제 권한 설정, 파일 경로 오류, 이미 존재하는 파일 등에서 발생할 수 있습니다. 파일 경로를 확인하고, 운영 체제 권한을 확인하고, 파일이 존재하지 않는지 확인하면 이 문제를 해결하고 프로그램이 정상적으로 실행되는지 확인할 수 있습니다. 비슷한 상황이 발생하면 위의 방법을 시도하여 문제가 해결되는지 확인할 수도 있습니다.

질문 내용

몇 ​​년 전에 만든 앱이 있어요. 최근에 대상 SDK를 변경하고 여전히 Play 스토어에 나열할 수 있도록 거의 변경하지 않고 다시 컴파일했습니다.

이로 인해 일부 휴대폰(내 휴대폰 포함)의 앱이 근본적으로 중단되는 것으로 나타났습니다. 업로드하기 전에 다른 휴대폰에서 테스트해 보았는데 잘 작동했습니다(안드로이드 버전 8.1.0). 내 휴대폰은 Android 11을 실행 중입니다(작동하지 않음).

애플리케이션의 초점은 단일 파일을 유지하는 데 있는데 내부 저장소에 파일을 생성하고 읽는 기능에 문제가 있는 것 같습니다.

디렉토리를 생성하려고 하는 기능입니다. 이것은 제가 생성 시 호출하는 테스트 기능일 뿐이며 원래 앱의 일부는 아닙니다.

으아악

문제는 디렉터리가 생성되지 않고 예외가 발생하지 않는다는 것입니다. 애플리케이션 정보에 들어가면 파일 및 미디어에 대한 권한이 표시됩니다.

만들려는 디렉터리 경로는 '/storage/emulated/0/this_is_a_test'입니다.

내가 아는 한 이 길이 맞는 것 같다. 앱을 처음 설치할 때 권한을 요청했습니다.

그러면 왜 디렉토리를 생성할 수 없나요? 문제를 식별하고 해결하는 방법은 무엇입니까?

명확히 말하자면, 이 똑같은 기능은 Android 8.1.0에서는 작동하지만 Android 11에서는 작동하지 않습니다. 컷오프가 무엇인지 잘 모르겠습니다.

해결 방법

Android 11 이상 기기에서는 외부 저장소의 루트 디렉터리에 파일과 디렉터리를 생성할 수 없습니다.

대신 기존 공개 디렉터리 중 하나를 사용하세요.

DCIM, 사진, 문서 등...

위 내용은 권한이 있는데도 내 애플리케이션에 대한 디렉터리나 파일을 만들 수 없습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제