使用路径“/storage/emulated/0/{我的应用程序名称}”存储文件是否始终安全?我想在Android设备的外部存储中存储文件,我想将其存储在以应用程序名称命名的文件夹中,此文件夹需要位于外部存储中。
ulmd4ohb1#
您是否试用过path_providerhttps://pub.dev/packages/path_provider/install软件包?它附带了getExternalStorageDirectory()和getApplicationDocumentsDirectory()方法,这可能就是你正在寻找的。据我所知,不同的操作系统类型也会被自动考虑。
path_provider
getExternalStorageDirectory()
getApplicationDocumentsDirectory()
rqdpfwrv2#
尝试名为android_external_storage的ext_storage的相同包,其概念相同,例如将下载的数据放置到下载文件夹中。
sr4lhrrt3#
看看这条线。一个应用程序可以在sdcard上访问的directory看起来像/storage/1718-0217/Android/data/com.example.app_name/files,你可以用下面的代码得到它。
directory
/storage/1718-0217/Android/data/com.example.app_name/files
(await getExternalStorageDirectories())?[1].path;
一个应用程序应该只访问sdcard上的一些受限目录。或者你应该使用Permission.manageExternalStorage.request(),它是严格受限的,总是返回false。幸运的是,每个应用程序的目录也可以被其他服务扫描,比如media。
Permission.manageExternalStorage.request()
media
3条答案
按热度按时间ulmd4ohb1#
您是否试用过
path_provider
https://pub.dev/packages/path_provider/install软件包?它附带了
getExternalStorageDirectory()
和getApplicationDocumentsDirectory()
方法,这可能就是你正在寻找的。据我所知,不同的操作系统类型也会被自动考虑。rqdpfwrv2#
尝试名为android_external_storage的ext_storage的相同包,其概念相同,例如将下载的数据放置到下载文件夹中。
sr4lhrrt3#
看看这条线。
一个应用程序可以在sdcard上访问的
directory
看起来像/storage/1718-0217/Android/data/com.example.app_name/files
,你可以用下面的代码得到它。一个应用程序应该只访问sdcard上的一些受限目录。或者你应该使用
Permission.manageExternalStorage.request()
,它是严格受限的,总是返回false。幸运的是,每个应用程序的目录也可以被其他服务扫描,比如
media
。