清理内存clear:
package com.android.cleanprocesstool;import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.util.Log; import android.os.UserHandle; import android.os.UserManager;import java.util.List; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.BatteryManager; import android.os.BatteryStats; import android.os.Bundle; import android.os.Handler; import android.os.IPowerManager; import android.os.Message; import android.os.ServiceManager; import android.os.SystemClock; import android.text.format.DateUtils; import android.widget.TextView; import android.os.Bundle; import android.app.ActivityManager; import android.text.format.Formatter; import android.util.Log; import android.widget.Toast; import java.util.List;public class ClearMemReceiver extends BroadcastReceiver {private static final String TAG = "Settings";private static final String PRIMARY_PROFILE_SETTING ="com.android.settings.PRIMARY_PROFILE_CONTROLLED";ActivityManager.MemoryInfo memoryInfo;private ActivityManager myActivityManager;private Context context;long mBeforeClearMem = 0;long mAfterClearMem = 0;private final long MIN_MEM_CLEAR = 10 * 1024 * 1024;@Overridepublic void onReceive(Context context, Intent broadcast) {context = context;memoryInfo = new ActivityManager.MemoryInfo();myActivityManager =(ActivityManager)context.getSystemService(Activity.ACTIVITY_SERVICE);myActivityManager.getMemoryInfo(memoryInfo) ;mBeforeClearMem = memoryInfo.availMem;clearBackgroundProcesses(context);}private String[] mWhiteList = {"com.tencent.qqmusic","com.tencent.mobileqq"};private void clearBackgroundProcesses(Context context) {ActivityManager activityManger = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningAppProcessInfo> list = activityManger.getRunningAppProcesses();int importance = ActivityManager.RunningAppProcessInfo.IMPORTANCE_SERVICE;if (list != null) {for(int i = 0; i < list.size(); i++) {ActivityManager.RunningAppProcessInfo apinfo = list.get(i);String[] pkgList = apinfo.pkgList;for (int j = 0; j < pkgList.length; j++) {boolean inWhiteList = false;for (String whitelist : mWhiteList) {if (whitelist.equals(pkgList[j])) {inWhiteList = true;break;}}if (!inWhiteList && !pkgList[j].startsWith("com.android.providers")) {activityManger.forceStopPackage(pkgList[j]);}}}}myActivityManager =(ActivityManager)context.getSystemService(Activity.ACTIVITY_SERVICE);myActivityManager.getMemoryInfo(memoryInfo) ;mAfterClearMem = memoryInfo.availMem;if (mAfterClearMem - mBeforeClearMem < MIN_MEM_CLEAR) {Toast.makeText(context, context.getResources().getString(R.string.clear_mem_no_need), Toast.LENGTH_LONG).show();} else {String memInfoString = Formatter.formatFileSize(context, mAfterClearMem - mBeforeClearMem);String toast = context.getResources().getString(R.string.clear_mem_release);Toast.makeText(context, String.format(toast, memInfoString), Toast.LENGTH_SHORT).show();}}}