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

Embedding base64 encoded images in XML files (android-java)

我正在做一个项目和主题传递系统(如果我可以这么说的话),我想把从小部件布局到任何必要图像的所有内容都放在 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>

注意:最终的主题完全不是这样的。这只是一个例子,让你们明白我的意思。谢谢

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

但是 XML DOM 本身很重,因此尽管可行,您可能不想要额外的资源、转换需要(文本和二进制结果的速度和双倍内存)。

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