我有一个特定的路径,用户文件将在以下路径下导出:
例如:/storage/emulated/0/Android/data/com.example.app_name/files
但是问题不在于如何生成路径,而在于如何进行重定向(打开存储文件的文件夹(。我试过使用插件url_launcher
,但显然它不起作用。我尝试将此路径作为url启动:
代码示例:
FlatButton(
onPressed: () async{
// _localPath returns /storage/emulated/0/Android/data/com.example.app_name/files
final path = await _localPath;
if (await canLaunch(path)) {
await launch(path);
} else {
throw 'Could not launch $path';
}
},
child: Text('Navigate to App storage Folder'),
),
用户将数据导出为csv文件,并希望使用该文件
预期结果:用户将被重定向到路径(文件夹文件(并退出Flutter应用程序。附言:我只针对安卓平台。
我似乎找到了一个名为open_file的包来解决您的问题。你可以简单地指向你想要打开的路径,它会向操作系统询问你想要用来处理文件或使用设置为默认值的应用程序。
基本代码示例:
class OpenDirectoryPath extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(
child: RaisedButton(
child: Text('Open path'),
onPressed: () {
_openPath('/storage/emulated/0/Download/');
},
),
);
}
void _openPath(String path) async {
OpenFile.open(path);
}
}
(在Android中测试(