这只是一个关于android的一般性问题,没有特定的用例。由于我目前仍在学习该平台,因此我一直在做一些experimentation
服务。
我创建了一个名为TestService
的类来扩展服务。我没有对代码进行任何更改,也没有在服务中做任何事情。从本质上讲,它只是一项空服务。这就是我的意思:
public class TestService extends Service {
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
使用以下代码,我在我的活动中启动服务:
Intent sIntent = new Intent();
sIntent.setClassName("com.mytestapp.android.servicetest",
"com.mytestapp.android.servicetest.TestService");
startService(sIntent);
为了阻止它,我打电话给:
stopService(sIntent);
现在要监控我的服务是否真正启动,我通过转到设置 - >访问了android提供的运行服务列表。应用程序 - >运行服务。好吧,它有效..服务出现在那里。
然而,我注意到的一件事是,每次我停止并再次启动我的服务,服务使用的内存似乎是增加(如运行的服务信息所示)。在做了大约二十次之后,服务使用的内存几乎增加了原来的50%!
我发现这很奇怪,我想知道是否有人可以解释这里似乎发生了什么?这是正常的吗?
答案 0 :(得分:1)
这是正常的吗?
最有可能的是,那些Service
对象尚未被垃圾收集。