【发布时间】:2018-10-24 17:30:32
【问题描述】:
我使用 XML-RPC 将图像从 Odoo-11 上传到 Android 应用程序。
如何将请求的结果转换为字节数组bytes[]?
因为表格中image字段的格式是bytes[]。
【问题讨论】:
我使用 XML-RPC 将图像从 Odoo-11 上传到 Android 应用程序。
如何将请求的结果转换为字节数组bytes[]?
因为表格中image字段的格式是bytes[]。
【问题讨论】:
您需要将图像文件数据编码和解码为 base64 才能正确发送和接收数据
【讨论】:
在 Odoo 中,图像文件存储为字符串(base64),我认为您需要将图像数据从 odoo 读取到移动应用程序中才能在移动应用程序中显示?
您可以使用 XML-RPC 库 Odoo External Api
外部 API 用于将 odoo 与其他系统集成
检查 url ,我们有 "Search_read" 方法从 odoo 读取数据
你会得到base64字符串,然后你需要在你的移动应用程序中转换base64字符串来显示图像
eg : models.execute_kw('res.partner','search_read',[['id','=',1]],{'fields':['name','image']})
您将获得合作伙伴 ID 1 的姓名和头像
【讨论】:
我有可能在 odoo 移动框架中使用其中一个图像加载库(glide、picasso.etc)吗?
【讨论】:
您可以在您的活动/片段中创建以下函数。
public static String encodeBitmapToString(Bitmap bitmap) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
String encoded = Base64.encodeToString(byteArray, Base64.DEFAULT);
return encoded;
}
【讨论】: