我想使用顫振從鏈接將影像上傳到firebase存盤,所以如果有人能告訴我我該怎么做。現在我正在使用 imagePicker 從手機中挑選影像,但現在我想從我搜索過的 URL 上傳圖片,并且有javascript 或其他的答案,但不是顫振,我想要顫振謝謝
uj5u.com熱心網友回復:
您必須首先從鏈接下載影像并將其保存在臨時目錄中,然后上傳到 firebase,因為您已經從影像選擇器上傳它這里是示例代碼,可以幫助您更好地理解
download(String url, String fileName) async {
try {
var per = await askPermission();
if (per!.isGranted) {
const path =
'/storage/emulated/0/Download/'; //you can use temporary
directory
final file = File('$path/$fileName');
await dio!.download(siteUrl url, file.path,
onReceiveProgress: (rec, total) {
isLoading = true;
print(rec);
});
Get.snackbar('Success', 'File downloaded successfully',
backgroundColor: Colors.green.withOpacity(0.4));
} else {
Get.snackbar('Error', 'please grant storage permission',
backgroundColor: Colors.red.withOpacity(0.4));
}
} catch (e) {
pr.close();
Get.snackbar('Error', '${e.toString}',
backgroundColor: Colors.red.withOpacity(0.4));
print(e);
}
}
我使用dio和Permission 處理程式包
uj5u.com熱心網友回復:
從您鏈接的問題中,如果您真的想將它們存盤在您的firebase存盤中,您可以將它們存盤在您的資料庫中,您必須下載它們并保存到firebase。您可以使用flutter_downloader 之類的插件,或者使用 dio /http 下載然后上傳到 firebase
uj5u.com熱心網友回復:
這對我有用`
class ImageUrlToStorage extends StatefulWidget {
const ImageUrlToStorage({Key key}) : super(key: key);
@override
State<ImageUrlToStorage> createState() => _ImageUrlToStorageState();
}
class _ImageUrlToStorageState extends State<ImageUrlToStorage> {
Dio dio;
bool isLoading = false;
final url =
'https://images.pexels.com/photos/733853/pexels-photo-733853.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500';
_save() async {
var status = await Permission.storage.request();
if (status.isGranted) {
var response = await Dio()
.get(url, options: Options(responseType: ResponseType.bytes));
final result = await ImageGallerySaver.saveImage(
Uint8List.fromList(response.data),
quality: 60,
name: "hello");
print(result);
}
}
@override
Widget build(BuildContext context) {
return ButtonWidget(
onClicked: () {
_save();
},
text: 'Upload Image to Storage',
);
}
}
` 我用過 dio、image_gallery_saver 和 Permission_handler
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/428761.html
標籤:火力基地 扑 firebase-存储
