>Java >java지도 시간 >Android 10에서 디렉터리를 만들 수 없는 이유는 무엇이며 어떻게 해결할 수 있나요?

Android 10에서 디렉터리를 만들 수 없는 이유는 무엇이며 어떻게 해결할 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-06 03:56:19183검색

Why Can't I Create Directories in Android 10 and How Can I Fix It?

안드로이드 10에서는 디렉토리를 생성할 수 없습니다

안드로이드 10에서는 디렉토리를 생성하지 못할 수 있습니다. 이는 Android Oreo보다 오래된 기기에서 가능합니다.

원인:

Android 10 이상에서는 외부 저장소나 이동식 저장소의 모든 위치에 대한 기본 액세스가 제한되었습니다. 여기에는 Environment.getExternalStorageDirectory() 및 기타 Environment 메서드(예: getExternalStoragePublicDirectory())가 포함됩니다.

해결책:

이 문제를 해결하는 방법은 여러 가지가 있습니다.

  1. Android 10 및 11의 경우, 기존 저장소 모드 사용: 매니페스트 파일의

    요소에 android:requestLegacyExternalStorage="true"를 추가합니다. 이렇게 하면 레거시 저장소 모드가 선택되고 기존 외부 저장소 코드가 작동됩니다.

  2. Context 메소드 사용:

    Context의 메소드(예: getExternalFilesDir())를 사용하여 외부 저장소의 디렉토리에 액세스하면 애플리케이션이 다음을 수행할 수 있습니다. 그것에 쓰십시오. 이러한 디렉터리를 사용하는 데는 권한이 필요하지 않습니다. 그러나 앱이 제거되면 앱에 저장된 데이터가 삭제됩니다.

  3. 스토리지 액세스 프레임워크 사용:

    ACTION_OPEN_DOCUMENT 및 ACTION_CREATE_DOCUMENT와 같은 스토리지 액세스 프레임워크를 사용합니다.

  4. 미디어 콘텐츠의 경우 MediaStore를 사용하세요.

    저장하려는 항목이 미디어 콘텐츠인 경우 MediaStore를 사용하여 미디어를 저장할 수 있습니다. 표준 미디어 위치.

위 내용은 Android 10에서 디렉터리를 만들 수 없는 이유는 무엇이며 어떻게 해결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.