网友通过本文主要向大家介绍了手机安全卫士,360手机安全卫士,360手机安全卫士下载,360手机安全卫士官网,手机安全卫士排行榜等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
手机安全卫士——进程管理,安全卫士进程管理
首先看一下界面:
TaskManagerActivity .java
//進程管理 public class TaskManagerActivity extends Activity { @ViewInject(R.id.tv_task_process_count) private TextView tv_task_process_count; @ViewInject(R.id.tv_task_memory) private TextView tv_task_memory; @ViewInject(R.id.list_view) private ListView list_view; private long totalMem; private List<TaskInfo> taskInfos; private List<TaskInfo> userTaskInfos; private List<TaskInfo> systemAppInfos; private TaskManagerAdapter adapter; private int processCount; private long availMem; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); initUI(); initData(); } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); if(adapter != null){ adapter.notifyDataSetChanged(); } } private class TaskManagerAdapter extends BaseAdapter { @Override public int getCount() { //判断当前用户是否需要显示系统进程,需要就显示,不需要就不显示 boolean result = SharedPreferencesUtils.getBoolean(TaskManagerActivity.this, "is_show_system", false); if(result){ return userTaskInfos.size() + 1 + systemAppInfos.size() + 1; }else{ return userTaskInfos.size() + 1; } } @Override public Object getItem(int position) { if (position == 0) { return null; } else if (position == userTaskInfos.size() + 1) { return null; } TaskInfo taskInfo; if (position < (userTaskInfos.size() + 1)) { // taskInfo = userTaskInfos.get(position - 1); } else { // int location = position - 1 - userTaskInfos.size() - 1; taskInfo = systemAppInfos.get(location); } return taskInfo; } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (position == 0) { // TextView tv = new TextView(getApplicationContext()); tv.setBackgroundColor(Color.GRAY); tv.setTextColor(Color.WHITE); tv.setText("用户进程:" + userTaskInfos.size() + "个"); return tv; } else if (position == (userTaskInfos.size() + 1)) { TextView tv = new TextView(getApplicationContext()); tv.setBackgroundColor(Color.GRAY); tv.setTextColor(Color.WHITE); tv.setText("系统进程" + systemAppInfos.size() + "个"); return tv; } ViewHolder holder; View view; if (convertView != null && convertView instanceof LinearLayout) { view = convertView; holder = (ViewHolder) view.getTag(); } else { view = View.inflate(TaskManagerActivity.this, R.layout.item_task_manager, null); holder = new ViewHolder(); holder.iv_app_icon = (ImageView) view .findViewById(R.id.iv_app_icon); holder.tv_app_name = (TextView) view .findViewById(R.id.tv_app_name); holder.tv_app_memory_size = (TextView) view .findViewById(R.id.tv_app_memory_size); holder.tv_app_status = (CheckBox) view .findViewById(R.id.tv_app_status); view.setTag(holder); } TaskInfo taskInfo; if (position < (userTaskInfos.size() + 1)) { // taskInfo = userTaskInfos.get(position - 1); } else { // int location = position - 1 - userTaskInfos.size() - 1; taskInfo = systemAppInfos.get(location); } holder.iv_app_icon.setImageDrawable(taskInfo.getIcon()); holder.tv_app_name.setText(taskInfo.getAppName()); holder.tv_app_memory_size.setText("占用内存:" + Formatter.formatFileSize(TaskManagerActivity.this, taskInfo.getMemorySize())); if (taskInfo.isChecked()) { holder.tv_app_status.setChecked(true); } else { holder.tv_app_status.setChecked(false); } // if(taskInfo.getPackageName().equals(getPackageName())){ // holder.tv_app_status.setVisibility(View.INVISIBLE); }else{ // holder.tv_app_status.setVisibility(View.VISIBLE); } return view; } } static class ViewHolder { ImageView iv_app_icon; TextView tv_app_name; TextView tv_app_memory_size; CheckBox tv_app_status; } private void i