如何以编程方式清除android中的应用程序内存使用情况?例如,清理内存使用以增加内存,例如" CLEAN MASTER"应用
答案 0 :(得分:2)
这没用。
首先,要了解原因,您必须了解UNIX(以及Android)如何管理RAM。
这Link to the XDA-Forum可以提供帮助。
基本上它表示将应用程序加载到RAM中以获得更好的访问时间和更流畅的感觉。他们不使用CPU或耗尽电池。
事实上,如果你清空RAM,系统必须再次将这些必要的应用程序(例如app-drawer)加载到RAM中,这肯定会使用CPU,从而耗尽你的电池。
简短:清除内存成本电池。而且我无法想象你是如何拥有这个的;)
要了解有关Android内存管理的更多信息,请参阅Android Developers上的指南。
如果您仍想以编程方式清除内存,可以参考this question
简而言之,它表示您可以按照以下方式执行此操作(未经测试):
@Override
protected void onDestroy(){
super.onDestroy();
Java.Lang.Runtime.GetRuntime().RunFinalization();
Java.Lang.Runtime.GetRuntime().Gc();
trimCache(this.ApplicationContext);
}
public void trimCache(Context context)
{
try
{
Java.IO.File dir = context.CacheDir;
if (dir != null && dir.IsDirectory)
{
deleteDir(dir);
}
context.DeleteDatabase("webview.db");
context.DeleteDatabase("webviewCache.db");
}
catch (Exception e)
{
CostantsLift.WriteTextFile(" trimCache ", e.Message, currDate);
// TODO: handle exception
}
}
public bool deleteDir(Java.IO.File dir)
{
if (dir != null && dir.IsDirectory)
{
String[] children = dir.List();
foreach (string child in children)
//for (int i = 0; i < children.Length; i++)
{
bool success = deleteDir(new Java.IO.File(dir, child));
if (!success)
{
return false;
}
}
}
// The directory is now empty so delete it
return dir.Delete();
}