在XML文件中嵌入base64编码图像(android-java)

时间:2015-03-23 12:02:18

标签: java android xml base64

我正在研究一个项目和主题传递系统(如果我可以这么说),我想把小部件布局中的所有内容放到xml文件中的任何必要图像中。毋庸置疑,图像必须用base64编码。(还是有另一种方式???)现在问题是考虑到我们处于移动设备领域,是否存在关于内存或解码中等大小图像的问题(可能在大多数50KiB)或任何其他问题?

xml主题的假设示例是:

<?xml version whatever?>
<theme>
     <positionx id="foo">5</positionx>
     <positiony id="foo">6</positiony>
     <icon id="foo">BASE64_ENCODED_IMAGE_HERE</icon>
     <positionx id="bar">5</positionx>
     <positiony id="bar">6</positiony>
     <icon id="bar">BASE64_ENCODED_IMAGE_2_HERE</icon>
</theme>

注意:最终的主题并不完全像这样。这只是你们知道我的意思的一个例子。感谢

1 个答案:

答案 0 :(得分:1)

Base64在char中携带6位有效负载,这意味着您需要4/3大小的文本表示; 50 KiB * 4/3 = 67 KiB。

然而,XML DOM本身很重,所以尽管可行,但您可能不需要额外的资源,转换需要(文本和二进制结果的速度和双重内存)。

即使我的结论或多或少是负面的,你的模型驱动方法当然是个好主意。您可以从原始XML生成运行时数据。