gpt4 book ai didi

android - 如何在android中使用API​​将base64编码的图像保存到MYSQL数据库中

转载 作者:行者123 更新时间:2023-11-29 18:36:38 33 4
gpt4 key购买 nike

onActivityResult 方法和 bitmapToBase64(Bitmap bitmap) 方法变量内的变量无法从外部访问
它存储在Mysql数据库中传递null值,同时在android中传递url。

例如:在下面的代码中,我将编码图像 base64String 存储在编码器中。
但是,当尝试从方法外部访问并通过 url 传递编码字符串时。它在数据库中保存为 null

public String bitmapToBase64(Bitmap bitmap) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 70, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
encoderes = Base64.encodeToString(byteArray, Base64.DEFAULT);
encodedImage.setImgStr(encoderes);
encodestr.setText(encoderes);

return encoderes; }

编码代码 fragment

   @Override 
public void onActivityResult ( int requestCode, int resultCode, Intent
data)
{
if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK) {
Uri imageUri = data.getData();
imageView.setImageURI(imageUri);
imageView.buildDrawingCache();
Bitmap bmap = imageView.getDrawingCache();
bitmapToBase64(bmap);} else if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK ) {
Uri imageUri = data.getData();
imageView.setImageURI(imageUri);
imageView.buildDrawingCache();
Bitmap bmap = imageView.getDrawingCache();
bitmapToBase64(bmap);

//Bitmap image = (Bitmap) data.getExtras().get("data");

} }
public String bitmapToBase64(Bitmap bitmap) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 70, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
encoderes = Base64.encodeToString(byteArray, Base64.DEFAULT);
encodedImage.setImgStr(encoderes);
encodestr.setText(encoderes);

return encoderes; }

最佳答案

使用此方法:

public static String convertToBase64(Bitmap bitmap) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.setDensity(IMAGE_DENSITY);
bitmap.compress(Bitmap.CompressFormat.JPEG, 90, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
setDpiInfo(byteArray, IMAGE_DENSITY);
return Base64.encodeToString(byteArray, Base64.NO_WRAP);
}

关于android - 如何在android中使用API​​将base64编码的图像保存到MYSQL数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45236240/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com