提交 5b2c7e35 编写于 作者: A andrewleo

Misc: show icon

上级 36da6929
...@@ -11,8 +11,9 @@ ...@@ -11,8 +11,9 @@
<ImageView <ImageView
android:id="@+id/image" android:id="@+id/image"
android:layout_width="wrap_content" android:layout_width="60px"
android:layout_height="wrap_content" android:layout_height="60px"
android:layout_gravity="center"
android:layout_marginRight="10dip" /> android:layout_marginRight="10dip" />
<TextView <TextView
......
...@@ -34,8 +34,7 @@ import android.util.Log; ...@@ -34,8 +34,7 @@ import android.util.Log;
*/ */
public class ProcessInfo { public class ProcessInfo {
private static final String LOG_TAG = "Emmagee-" private static final String LOG_TAG = "Emmagee-" + ProcessInfo.class.getSimpleName();
+ ProcessInfo.class.getSimpleName();
private static final String PACKAGE_NAME = "com.netease.qa.emmagee"; private static final String PACKAGE_NAME = "com.netease.qa.emmagee";
...@@ -50,26 +49,18 @@ public class ProcessInfo { ...@@ -50,26 +49,18 @@ public class ProcessInfo {
public List<Programe> getRunningProcess(Context context) { public List<Programe> getRunningProcess(Context context) {
Log.i(LOG_TAG, "get running processes"); Log.i(LOG_TAG, "get running processes");
ActivityManager am = (ActivityManager) context ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> run = am.getRunningAppProcesses(); List<RunningAppProcessInfo> run = am.getRunningAppProcesses();
PackageManager pm = context.getPackageManager(); PackageManager pm = context.getPackageManager();
List<Programe> progressList = new ArrayList<Programe>(); List<Programe> progressList = new ArrayList<Programe>();
boolean launchTag;
for (ApplicationInfo appinfo : getPackagesInfo(context)) { for (ApplicationInfo appinfo : getPackagesInfo(context)) {
launchTag = false;
Programe programe = new Programe(); Programe programe = new Programe();
if (((appinfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0) if (((appinfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0) || ((appinfo.processName != null) && (appinfo.processName.equals(PACKAGE_NAME)))) {
|| ((appinfo.processName != null) && (appinfo.processName
.equals(PACKAGE_NAME)))) {
continue; continue;
} }
for (RunningAppProcessInfo runningProcess : run) { for (RunningAppProcessInfo runningProcess : run) {
if ((runningProcess.processName != null) if ((runningProcess.processName != null) && runningProcess.processName.equals(appinfo.processName)) {
&& runningProcess.processName
.equals(appinfo.processName)) {
launchTag = true;
programe.setPid(runningProcess.pid); programe.setPid(runningProcess.pid);
programe.setUid(runningProcess.uid); programe.setUid(runningProcess.uid);
break; break;
...@@ -77,9 +68,7 @@ public class ProcessInfo { ...@@ -77,9 +68,7 @@ public class ProcessInfo {
} }
programe.setPackageName(appinfo.processName); programe.setPackageName(appinfo.processName);
programe.setProcessName(appinfo.loadLabel(pm).toString()); programe.setProcessName(appinfo.loadLabel(pm).toString());
if (launchTag) { programe.setIcon(appinfo.loadIcon(pm));
programe.setIcon(appinfo.loadIcon(pm));
}
progressList.add(programe); progressList.add(programe);
} }
Collections.sort(progressList); Collections.sort(progressList);
...@@ -95,8 +84,7 @@ public class ProcessInfo { ...@@ -95,8 +84,7 @@ public class ProcessInfo {
*/ */
private List<ApplicationInfo> getPackagesInfo(Context context) { private List<ApplicationInfo> getPackagesInfo(Context context) {
PackageManager pm = context.getApplicationContext().getPackageManager(); PackageManager pm = context.getApplicationContext().getPackageManager();
List<ApplicationInfo> appList = pm List<ApplicationInfo> appList = pm.getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES);
.getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES);
return appList; return appList;
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册