【发布时间】:2023-03-23 03:06:01
【问题描述】:
我正在使用三星 A52 用相机而不是我的 firebase 应用程序拍摄一些图像并保存它们,然后我会将这些图像上传到 firebase,我在上传之前对其进行压缩。
现在上传图片后,我检查并发现它们是 -90 旋转的,不是所有的图片都旋转了,有些旋转了,有些没有;
有什么想法吗?
或者在从firebase加载图像时是否有可能检测到它是否旋转到retotate是90?
从图库中获取图片后上传图片的功能。
for (uploadCount = 0; uploadCount < ImageList.size(); uploadCount++) {
String imagePath = productRef.child(UID).child("images").push().getKey();
Uri IndividualImage = ImageList.get(uploadCount);
assert imagePath != null;
StorageReference ImageName = productImagesRef.child(UID).child(imagePath);
//Compress Images
Bitmap bmp = null;
try {
bmp = MediaStore.Images.Media.getBitmap(getContentResolver(), IndividualImage);
} catch (IOException e) {
e.printStackTrace();
}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
assert bmp != null;
bmp.compress(Bitmap.CompressFormat.JPEG, 25, baos);
byte[] data = baos.toByteArray();
//End of compressing
//start on uploading compressed
ImageName.putBytes(data).addOnSuccessListener(taskSnapshot -> ImageName.getDownloadUrl()
.addOnSuccessListener(uri -> {
String url = String.valueOf(uri);
StoreLink(url, imagePath);
})).addOnProgressListener(snapshot1 -> {
double progress = (100.0* snapshot1.getBytesTransferred()/snapshot1.getTotalByteCount());
loadingDialog.setMessage("صورة رقم " + (count+ 1) + " -->> " +(int) progress + "%");
});
}
【问题讨论】:
标签: android firebase firebase-storage android-bitmap