最初にフォルダを生成するには、 AndroidMinifest.xmlで権限を追加する必要があります
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
次に、次のメソッドを呼び出して、フォルダを作成するディレクトリ(この名前はEnvironment。listに存在する必要があります)とフォルダ名を使用して新しいフォルダを作成します。
File outputDirectory = GetPhotoDirectory(Environment.DIRECTORY_PICTURES, "YourFolder");
この方法でフォルダを生成します
public static File GetDirectory(String inWhichFolder, String yourFolderName ) {
File outputDirectory = null;
String externalStorageState = Environment.getExternalStorageState();
if (externalStorageState.equals(Environment.MEDIA_MOUNTED)) {
File pictureDirectory = Environment.getExternalStoragePublicDirectory(inWhichFolder);
outputDirectory = new File(pictureDirectory, yourFolderName);
if (!outputDirectory.exists()) {
if (!outputDirectory.mkdirs()) {
Log.e(LogHelper.LogTag, "Failed to create directory: " + outputDirectory.getAbsolutePath());
outputDirectory = null;
}
}
}
return outputDirectory;
}
新しく作成したフォルダの下にファイルを作成する場合は、以下のコードを使用できます
public static Uri GenerateTimeStampPhotoFileUri(File outputDirectory, String fileName){
Uri photoFileUri = null;
if(outputDirectory!=null) {
File photoFile = new File(outputDirectory, fileName);
photoFileUri = Uri.fromFile(photoFile);
}
return photoFileUri;
}
ファイルディレクトリでフォルダを作成した後、を呼び出してファイルを作成します。それはあなたのファイルUriを返します
Uri fileUri = GenerateTimeStampPhotoFileUri(outputDirectory, fileName);