我有一个尝试从服务器获取图像的android应用程序。将图像作为base64编码的bytearray或其路径传递
那么哪一个能够提供更好的性能?为什么? (在时间和空间上)
传递字节阵列作为响应于Android应用
或
- 在服务器传递的图像的唯一路径作为响应和检索图像从Android应用程序的网址。
我有一个尝试从服务器获取图像的android应用程序。将图像作为base64编码的bytearray或其路径传递
那么哪一个能够提供更好的性能?为什么? (在时间和空间上)
传递字节阵列作为响应于Android应用
或
答案取决于图像的质量和尺寸......假设你已经创建了一个图像库应用程序,从服务器获取图像,并且你想要非常高质量的可下载图像....那么你应该使用图像路径
但
如果你只是用图像的缩略图,或者如果用户没有使用的图像,你可以使用base64编码图像的应用程序,因为它的加载时间非常快,重叠分离是由应用程序完成的,而不是通过网络完成的......即通过路径加载整个图像需要时间和大量数据,而base64编码图像就像商场字符串,这将被应用程序转换为图像,并将尽量减少加载时间..
这两种方法都会产生高质量的图像吗? –
编码的图像不会产生高质量的图像 –
为什么? –
我会建议保存/检索图像从/到服务器的路径。
有时图像尺寸可能太大,无法将图像检索到您的android应用程序,但是如果您将图像路径存储到服务器,则不会遇到问题。
我总是将图像存储在一个文件夹中,只保存图像路径到服务器。它使数据库规模很小,查询数量少,查询结果的大小很小,这都意味着数据库执行速度更快。
将图像编码为base64字符串并将其包含在您的响应中是一种常见做法。
但是,如果您选择仅包含图像的URL,则可以从传输的大小/速度中获益,因为base64流的大小是原始二进制流的4/3(33%开销)。
此外,在这种情况下,您可以缓存图像。
到底它是相同的,因为当你传递一个url时,它将被下载为一个字节数组 –
只传递路径服务器中的图像 –
为什么呢? –