我正在尝试使用自 API 1 以来一直支持的非常简单的代码。
if (bitmap != null) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.WEBP, IMAGE_QUALITY, byteArrayOutputStream);
byte[] bytes = byteArrayOutputStream.toByteArray();
result = Base64.encodeToString(bytes, Base64.DEFAULT);
}
不知何故,
bitmap.compress(Bitmap.CompressFormat.WEBP, IMAGE_QUALITY, byteArrayOutputStream);
给我一个奇怪的错误:java.lang.NoSuchFieldError: android.graphics.Bitmap$CompressFormat.WEBP
这只发生在我的 moto razr 2.3
我在互联网上找不到任何关于此的内容。这是怎么回事?(我明白了,显然,摩托罗拉的股票 android 并没有考虑包含它,但我将如何解决这个问题?)任何提示?
我要做的就是压缩屏幕(或视图)的快照,并以用户友好的方式将其附加String
到电子邮件意图的正文中(同样的设备也不能正确执行文件附件) ,并将其传递给任何可以发送电子邮件的人。
尝试压缩为 .jpeg,然后将其转换为 base64 编码字符串,然后附加到正文中的电子邮件需要很长时间,而且用户响应性不是很好。这不可能发生。
有什么帮助吗?