在Android中使用Base64上传图片

时间:2024-03-15 19:56:24

在Android中使用Base64上传图片


1.服务器接口参数

在Android中使用Base64上传图片


后台已经给出了具体的参数,所以使用base64上传图片也是分分钟的事情了。

步骤1

获取需要上传图片的路径:(这里直接给出项目的部分代码)

//把bitmap转换成String
public String bitmapToString(String filePath) {
    Bitmap bm = getSmallBitmap(filePath);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();

    //1.5M的压缩后在100Kb以内,测试得值,压缩后的大小=94486字节,压缩后的大小=74473字节
    //这里的JPEG 如果换成PNG,那么压缩的就有600kB这样
    bm.compress(Bitmap.CompressFormat.JPEG, 40, baos);
    byte[] b = baos.toByteArray();
    Log.d("d", "压缩后的大小=" + b.length);
    return Base64.encodeToString(b, Base64.DEFAULT);
}

// 根据路径获得图片并压缩,返回bitmap用于显示
public Bitmap getSmallBitmap(String filePath) {
    final BitmapFactory.Options options = new BitmapFactory.Options();
    options.inJustDecodeBounds = true;
    BitmapFactory.decodeFile(filePath, options);

    // Calculate inSampleSize
    options.inSampleSize = calculateInSampleSize(options, 480, 800);

    // Decode bitmap with inSampleSize set
    options.inJustDecodeBounds = false;

    return BitmapFactory.decodeFile(filePath, options);
}
在Android中使用Base64上传图片


ok ! 搞定0.0~