如何在减少图像大小反应原生后将图像上传到firebase

时间:2017-12-14 15:05:38

标签: android ios react-native blob firebase-storage

我正在使用图像选择器从手机中拾取图像。图像选择器提供响应

{height:33,origURL:" assets-library://asset/asset.JPG?id = 9F983DBA-EC35-42B8-8773 -B597CF782EDD& ext = JP G",经度: -17.54892833333333,fileName:" IMG_0003.JPG",uri:" file:/// Users / mac / Library / Developer / CoreSimulator / ... temfiles / ADC7B1EA-93A0-4A25-B7CA -342BE3EF58BE.jp g",...}

我正在使用RNFetchBlob将图片上传到firebase。实际上我想使用数据或uri不使用origURL上传图像,因为我需要在上传之前缩小图像大小。目前使用uri无法上传

FragmentTransaction  fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.remove(R.id.container,fragment,optionalTag);
fragmentTransaction.commit();

2 个答案:

答案 0 :(得分:0)

你在项目中使用https://github.com/react-community/react-native-image-picker吗?您可以尝试使用maxWidth,maxHeight道具来减少选择图像后的图像尺寸。

您可以使用https://github.com/ivpusic/react-native-image-crop-picker来挑选图片。并使用compressImageMaxWidth和compressImageMaxHeight道具来减小图像大小。

我希望它能解决问题。

答案 1 :(得分:0)

我用过

  

反应天然图像作物选取器   反应天然-图像拾取器

确实缩小了图片的大小,并使用base64 =>上传到firebase ...putString(Image64, 'base64');...

**问题是**当需要上传2张不同大小的图片时,firebase上传出错了。并且给了我这个

  

目前只能从其他Blob创建一个Blob

之前我使用blob并对上传2张不同的图片有相同的反应

除了上传相同的大小然后使用firebase功能按名称调整图片大小外,任何人都知道我该怎么办?