【发布时间】:2019-07-22 05:30:32
【问题描述】:
Android Flutter 应用从另一部 Android 手机上的服务器下载图像。下载后,手机图库或文件资源管理器无法打开或查看文件。但是,当通过十六进制编辑器检查时,下载的文件和原始文件是完全相同的副本,并且当导入到 Windows 时,“损坏的”下载文件可以通过图像查看器查看。我能找到的文件之间的唯一区别是 Windows 检查的元数据。这可能是什么原因?
Android 服务器上的原始文件:
在 Android 客户端上下载的文件:
这是我用来从 Uint8list 创建文件的代码:
Future<File> downloadFileAndroid(Uint8List fileBytes, String fileName) async{
var dir = await getExternalStorageDirectory();
File photoFile;
var photoDirectory = await Directory(dir.path + "/Downloader").create(recursive: true);
photoFile = await new File(photoDirectory.path + "/" + fileName).create();
if(await photoFile.exists()){
await photoFile.writeAsBytes(fileBytes);// also tried flush: true
print("Created file and it exists");
} else {
print("Error: tried to create file but it doesnt exist");
}
}
【问题讨论】:
标签: android file flutter dart client