Để tạo thư mục trên điện thoại dung lượng bộ nhớ chính (bộ nhớ nói chung nội bộ), bạn nên sử dụng sau mã. Xin lưu ý rằng ExternalStorage trong Environment.getExternalStorageDirectory()
không nhất thiết phải đề cập đến sdcard, nó sẽ trả về dung lượng bộ nhớ điện thoại chính
File mediaStorageDir = new File(Environment.getExternalStorageDirectory(), "MyDirName");
if (!mediaStorageDir.exists()) {
if (!mediaStorageDir.mkdirs()) {
Log.d("App", "failed to create directory");
return null;
}
}
thư mục được tạo ra sử dụng mã này sẽ hiển thị cho người sử dụng điện thoại. Phương thức khác (như trong câu trả lời được chấp nhận) tạo thư mục ở vị trí (/data/data/package.name/app_MyDirName), do đó người dùng điện thoại bình thường sẽ không thể truy cập dễ dàng và do đó bạn không nên sử dụng nó để lưu trữ video/ảnh vv
Bạn sẽ cần quyền, trong AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
Tôi nghĩ rằng kiểm tra nếu tồn tại là không cần thiết ở đây. Dựa trên tài liệu: "Thư mục sẽ được tạo nếu nó chưa tồn tại." – Paul
nếu (! Mydir.exists) nên là ** if (! Mydir.exists()) ** –
làm cách nào để bạn thêm tệp vào thư mục cụ thể này? –