簡體   English   中英

使外部目錄android

[英]make external directory android

如果要在Android應用程序的外部存儲中創建目錄,請使用以下代碼:

File mDirectory = new File(Environment.getExternalStorageDirectory() + "/myDir");

        if (!mDirectory.exists()) {

            mDirectory.mkdirs();

            if (!mDirectory.mkdirs()) {
                Log.e("App", "failed to create directory");
            }
        }

但是沒有創建目錄,並且錯誤消息始終顯示在logcat

App: failed to create directory

我也同時使用mkdir()mkdirs() ,但是結果是相同的。 錯誤在哪里?

更新:

AndroidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

您正在兩次調用mkdirs 第一次調用將創建目錄。 第二個調用返回false,因為該目錄已存在。

您在哪個Android版本上運行此應用程序? Android開發者網站上的這句話說

如果設備運行的是Android 6.0(API級別23)或更高版本 ,並且應用程序的targetSdkVersion為23或更高版本,則該應用程序會在運行時向用戶請求權限。 用戶可以隨時撤消權限,因此應用程序每次運行時都需要檢查其是否具有權限

如果設備運行的是Android 5.1(API級別22)或更低版本,或者應用程序的targetSdkVersion為22或更低版本,則系統會在用戶安裝應用程序時要求用戶授予權限。

現在有一個危險權限的概念。 用戶需要在運行時授予這些權限,而WRITE_EXTERNAL_STORAGE是其中之一

Android Dev網站上的本教程將教您如何在運行時請求權限

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM