2010-08-29 52 views
1

我有一个应用程序,有一个小部件。在主应用程序中,我有一个广告框架(由于许可证而无法编辑),每当我退出应用程序时累计泄漏约1MB。看起来它的一个线程正在后台运行(不必要的),它将保持其进程,并且当我启动应用程序时,这些线程将被重新创建。后台进程不会清除内存。在Android上杀死我自己的进程是一个好主意吗?

它是一个好主意,打电话

android.os.Process.killProcess(android.os.Process.myPid()); 

在我的主要活动的onDestroy方法?

此外,会这样做杀我的小部件的服务呢?

+0

最好的想法可能是唠叨第三方框架的开发者修复他们的代码。 – Amber 2010-08-29 23:08:38

+3

这是一个好主意吗?不需要。框架需要修复或删除。其他任何东西都是一种肮脏的黑客攻击,它会给你的应用(和Android)一个坏名字。 – jrockway 2010-08-29 23:10:14

回答

0

您可以使用intent概念来使用后台处理,或者您也可以开发将在后台执行第三方框架的服务。

+0

感谢您的回应,框架工作是一个广告框架,因此,它应该每次都加载一个新框架,而我的用户不喜欢让应用程序不断在后台运行。另外,广告每3秒使用10%的CPU。我需要一种方法来杀死它,上面的代码似乎工作 – zsniperx 2010-08-30 12:23:11