flutter camera插件拍的照片有没有办法提前指定文件名?
Is there a way to specify the file name in advance for the picture taken with the flutter camera plugin?
您好,我正在使用 flutter camera plugin,它工作正常,我遇到的主要问题是我无法在拍照时找到告诉插件图像文件名的方法,在 android 使用 Kotlin 这将是这样的:
photoUri = FileProvider.getUriForFile(requireActivity(), "io.awesomedomain", photoFile) // build uri on the app storage space and specific file name -> photoFile.
captureImageIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri) // define the pic name before picture is actually taken by the camera.
startActivityForResult(captureImageIntent, REQUEST_PHOTO) // start the camera
我目前只是在 flutter 相机插件的图片 XFile returns 之后重命名图片文件名,但这并不是最佳选择,所以我想知道我是否遗漏了什么。 flutter camera插件是否可以提前指定文件名?
我目前正在使用最新的可用版本:camera: ^0.7.0+2
好吧,看来我对Camera插件有误解,我注意到返回的XFile把图片放在了缓存目录中,实际上提供了一种将图片保存到更明确存储的方法xfile.saveTo
所以我做了:
var appDir = appDocDirectory.parent.path; // get app directory
file.saveTo('$appDir${Platform.pathSeparator}files${Platform.pathSeparator}${weightPicture.pictureFileName}');
因此图片正确保存在 $myAppDir/files/picName.jpg 下,其中文件是我配置为具有写入权限的目录,picName 由应用程序根据需要定义。
您好,我正在使用 flutter camera plugin,它工作正常,我遇到的主要问题是我无法在拍照时找到告诉插件图像文件名的方法,在 android 使用 Kotlin 这将是这样的:
photoUri = FileProvider.getUriForFile(requireActivity(), "io.awesomedomain", photoFile) // build uri on the app storage space and specific file name -> photoFile.
captureImageIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri) // define the pic name before picture is actually taken by the camera.
startActivityForResult(captureImageIntent, REQUEST_PHOTO) // start the camera
我目前只是在 flutter 相机插件的图片 XFile returns 之后重命名图片文件名,但这并不是最佳选择,所以我想知道我是否遗漏了什么。 flutter camera插件是否可以提前指定文件名?
我目前正在使用最新的可用版本:camera: ^0.7.0+2
好吧,看来我对Camera插件有误解,我注意到返回的XFile把图片放在了缓存目录中,实际上提供了一种将图片保存到更明确存储的方法xfile.saveTo
所以我做了:
var appDir = appDocDirectory.parent.path; // get app directory
file.saveTo('$appDir${Platform.pathSeparator}files${Platform.pathSeparator}${weightPicture.pictureFileName}');
因此图片正确保存在 $myAppDir/files/picName.jpg 下,其中文件是我配置为具有写入权限的目录,picName 由应用程序根据需要定义。