2012-08-09 77 views
0

在Android中,它允许每个应用程序使用大约16Mb RAM。我想问,我开始在后台运行一项新服务。我可以在这项服务中使用另一个16Mb RAM吗?后台服务是新进程?

谢谢。

回答

0

如果仅在服务中使用16MB,则可能会出现OutOfMemory异常。因为这些活动也需要一些内存。 堆大小是允许应用程序使用的。你不能超越那个。任何服务都将成为该应用程序的一部分,甚至在后台运行。

+0

您可以使用它来获取设备的堆大小。
long heap = Runtime.getRuntime()。maxMemory(); int mega = 1024 * 1024; Log.d(“TAG”,“Heap size is”+ heap/mega +“MB”); – 2012-08-10 00:45:56

0

在Android中,它允许每个应用程序使用大约16Mb的RAM

的可用的进程堆空间的量由Android版本和设备配置而变化。目前使用的大多数设备都有超过16MB的可用空间。

我想问,我开始一个新的服务在后台运行。我可以在这项服务中使用另一个16Mb RAM吗?

默认情况下,该服务与您的应用中的其他组件位于相同的进程中,因此将共享相同的堆。