Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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 Nexus 4.2.1上占用大量内存的应用程序_Android_Android 4.2 Jelly Bean_Google Nexus - Fatal编程技术网

Android Nexus 4.2.1上占用大量内存的应用程序

Android Nexus 4.2.1上占用大量内存的应用程序,android,android-4.2-jelly-bean,google-nexus,Android,Android 4.2 Jelly Bean,Google Nexus,在我的项目中,我使用了一些绘图工具来创建美观的UI,我遇到的奇怪问题是,它在2.3.4版本的Kindle Fire上正常工作,只占用了2.8397MB,但当我在nexus 4.2.1设备上运行相同的应用程序时,需要23.45678MB到30MB,运行速度非常慢,我原以为问题出在drawable上,所以为它们创建了9个补丁,但仍然遇到同样的问题。每个分辨率有不同的drawable文件夹吗?如果是这样,这可能与您在不同文件夹中拥有的资源有关,因此加载到Nexus上的Drawable要比加载到kind

在我的项目中,我使用了一些绘图工具来创建美观的UI,我遇到的奇怪问题是,它在2.3.4版本的Kindle Fire上正常工作,只占用了2.8397MB,但当我在nexus 4.2.1设备上运行相同的应用程序时,需要23.45678MB到30MB,运行速度非常慢,我原以为问题出在drawable上,所以为它们创建了9个补丁,但仍然遇到同样的问题。

每个分辨率有不同的
drawable
文件夹吗?如果是这样,这可能与您在不同文件夹中拥有的资源有关,因此加载到Nexus上的Drawable要比加载到kindle fire上的Drawable大得多(kindle fire的分辨率为1024x600,而Nexus 7的分辨率为1280x800)

每个分辨率有不同的
可绘制的
文件夹吗?如果是这样,这可能与您在不同文件夹中拥有的资源有关,因此您的Nexus上加载的Drawable要比kindle fire上加载的Drawable大得多(kindle fire的分辨率为1024x600,而Nexus 7的分辨率为1280x800)

在预蜂窝设备上(如2.3.4 kindle fire)位图存储在本机堆中,在分析ddms中的dalvik堆内存使用情况时,不会显示本机堆

但是,这并不意味着它仍然不计入堆限制

蜂窝和更高版本的设备将位图存储在dalvik堆中,该堆将显示在ddms中。这应该可以解释为什么KindleFire上的内存使用要“少”很多。事实并非如此,只是看起来是这样。

在蜂窝设备之前(如2.3.4 Kindle Fire),位图存储在本机堆中,在分析ddms中的dalvik堆内存使用情况时,本机堆不会显示

但是,这并不意味着它仍然不计入堆限制


蜂窝和更高版本的设备将位图存储在dalvik堆中,该堆将显示在ddms中。这应该可以解释为什么KindleFire上的内存使用要“少”很多。不是这样,只是看起来是这样。

只有当我将设备连接到分配跟踪器以观察内存时,我才有问题,但当我在用户视角下运行时,它工作正常,没有任何问题。你能指定nexus和kindle是什么吗?点燃火5?Nexus7?Galaxy Nexus?Nexus 7和kindle fire 6.3设备@Glenn您是否尝试在应用程序设置中查看应用程序的内存使用情况?使用DDMS的堆转储和MAT来确定内存的消耗位置。使用Traceview确定CPU的使用位置。在您完成这些操作之前,不要发布有关内存或CPU使用情况的StackOverflow问题。只有当我将设备连接到分配跟踪器以观察内存时,我才会出现问题,但当我在用户视角下运行时,它工作正常,没有任何问题。您可以指定nexus和kindle是什么吗?点燃火5?Nexus7?Galaxy Nexus?Nexus 7和kindle fire 6.3设备@Glenn您是否尝试在应用程序设置中查看应用程序的内存使用情况?使用DDMS的堆转储和MAT来确定内存的消耗位置。使用Traceview确定CPU的使用位置。在完成这些工作之前,不要发布有关内存或CPU使用情况的StackOverflow问题。