Copyright (c) 2014, John Phillips
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
...
If you think the Android project HistoryCleanerPro listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code
package com.ayros.historycleaner.cleaning.items;
/*fromwww.java2s.com*/import java.util.ArrayList;
import java.util.List;
import android.content.pm.PackageManager;
import android.os.Build;
import com.ayros.historycleaner.Globals;
import com.ayros.historycleaner.cleaning.Category;
import com.ayros.historycleaner.cleaning.CleanItem;
import com.ayros.historycleaner.helpers.DBHelper;
import com.stericson.RootTools.RootTools;
publicclass _System_FrequentContacts extends CleanItem
{
public _System_FrequentContacts(Category parent)
{
super(parent);
}
@Override
public String getDisplayName()
{
return"Frequently Called";
}
@Override
public String getPackageName()
{
return"com.android.phone";
}
@Override
publicboolean isApplicable()
{
// Frequent contacts isn't available until Honeycomb
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB)
{
return false;
}
PackageManager pm = Globals.getContext().getPackageManager();
return pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY);
}
@Override
public List<String[]> getSavedData()
{
if (!RootTools.exists("/data/data/com.android.providers.contacts/databases/contacts2.db"))
{
returnnew ArrayList<String[]>();
}
return DBHelper.queryDatabase
(
Globals.getContext(),
"/data/data/com.android.providers.contacts/databases/contacts2.db",
new String[] { "Name", "Times Contacted" },
"raw_contacts",
new String[] { "display_name", "times_contacted" },
"times_contacted>'0'"
);
}
@Override
publicboolean clean()
{
if (!RootTools.exists("/data/data/com.android.providers.contacts/databases/contacts2.db"))
{
return true;
}
return DBHelper.updateDatabase
(
Globals.getContext(),
"/data/data/com.android.providers.contacts/databases/contacts2.db",
new String[]
{
"UPDATE contacts SET times_contacted='0';",
"UPDATE contacts SET last_time_contacted='0';",
"UPDATE raw_contacts SET times_contacted='0';",
"UPDATE raw_contacts SET last_time_contacted='0';",
"DELETE FROM data_usage_stat;"
}
);
}
}