我创建了一个创建后台服务的应用程序。当我关闭应用程序时,服务正在运行,当我返回以将其“绑定”(bindService)以进行通信时。
问题是当我关闭应用程序并重新进入时,它会显着增加正在使用的内存。花费 20Mb -> 24Mb,如果我出去又来 24Mb -> 28Mb,28Mb -> 30Mb ... 这样就破坏了应用程序。我没有位图。如果足够使用静态数组,但我已经测试过并且不是问题的根源。
当我完全关闭应用程序(包括服务)调用 System.exit(0) 并清理所有内存时,当然,我可以在服务关闭时继续运行时调用。我尝试调用垃圾收集器 (System.gc()),如果我注意到内存减少关闭,但是当您再次打开应用程序时,相同的内存会增加。
我将非常感谢您的帮助,再见!