Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Android本机库显示图像_Android - Fatal编程技术网

使用Android本机库显示图像

使用Android本机库显示图像,android,Android,我想通过使用C语言的android本机库显示图像来提高我的应用程序的性能。这个问题是因为我的应用程序中的图像需要大量内存。我打赌没有必要这样做。Android位图已经用C语言编写,而且在大多数情况下,已经进行了硬件加速。很高兴知道,你将要实现什么,你已经付出了什么努力 编辑: 因此,如果您想在内存中存储大量图像,可以使用本机内存。诀窍在于,您可以使用Java方法进行绘图(这很方便),使用本机内存存储未使用的图像(速度快、体积大)。您可以尝试使用NativeBuffer库执行以下任务: 用法非常简

我想通过使用C语言的android本机库显示图像来提高我的应用程序的性能。这个问题是因为我的应用程序中的图像需要大量内存。

我打赌没有必要这样做。Android位图已经用C语言编写,而且在大多数情况下,已经进行了硬件加速。很高兴知道,你将要实现什么,你已经付出了什么努力

编辑:

因此,如果您想在内存中存储大量图像,可以使用本机内存。诀窍在于,您可以使用Java方法进行绘图(这很方便),使用本机内存存储未使用的图像(速度快、体积大)。您可以尝试使用NativeBuffer库执行以下任务:

用法非常简单。您必须将所有图像预加载到缓冲区。然后,当您需要图像时,可以从缓冲区加载它。即使在draw()方法中也可以这样做。与SD卡相比,速度快得离谱


当然,要注意NativeBuffer使用C风格的分配,可能会耗尽系统内存。它不会抛出内存错误,但会在未经请求的情况下强制停止应用程序。NativeLibrary包含一些用于检查可用内存的实用程序,但您必须自己管理它。

我完全怀疑您是否能通过这种方式改进任何内容。Canvas是一个非常高性能的API。我认为android应用程序的应用程序大小有限,因此,我需要增加大小,而不仅仅是限制为25MB或堆大小,以便加载图像不会花费大量时间,而本地库可以减少这些时间。我有一个像talking tom这样的应用程序,它需要花费大量时间制作不同的动画。我还可以做些什么来提高性能?请编辑您的问题(添加有关所需内存量的信息),这样您就可以获得更多答案,并对您的问题进行投票。干杯