![](/img/trans.png)
[英]Android/Java File.mkdirs() in external storage not working
[英]Does File.mkdirs() need WRITE_EXTERNAL_STORAGE permission
下面的代碼是否需要 WRITE_EXTERNAL_STORAGE 權限? 我的意思是 file.mkdirs(); 需要 WRITE_EXTERNAL_STORAGE 來寫入文件
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss", Locale.ENGLISH);
filename = sdf.format(new Date());
try {
String path = ctx.getApplicationContext().getFilesDir().getPath();
OutputStream fOut = null;
File file = new File(path, "thinkly");
if (!file.exists()) {
file.mkdirs();
}
File file2 = new File(file, filename + ".jpg");
fOut = new FileOutputStream(file2);
capturedBitmap.compress(Bitmap.CompressFormat.JPEG, 90, fOut);
fOut.flush();
fOut.close();
return file2.getAbsolutePath();
} catch (Exception e) {
e.printStackTrace();
return "";
}
所有 Android 器件都有兩個文件存儲選項:內部存儲和外部存儲。
內部存儲器:
外置儲存:
這些是 Android 中常見的文件訪問功能,因此您可以知道哪些需要權限,哪些不需要:
綜上所述
在您的代碼中,您使用 getFilesDir() 方法 - 因此您無需請求許可。
引出:
外部存儲權限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
是的,即使您正在創建新目錄,也需要在清單中授予權限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
讓我知道這是否對您有幫助:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.