version:4.0

fix:修复日志上传错误
update:正在运行的app显示奥乐云系列应用
This commit is contained in:
2022-04-13 10:37:36 +08:00
parent 297f33bf2d
commit 0a75344b61
10 changed files with 98 additions and 32 deletions

View File

@@ -48,6 +48,7 @@ import java.util.Arrays;
import java.util.Enumeration;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.function.Predicate;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
@@ -1134,20 +1135,42 @@ public class ApkUtils {
Log.e("addShortcut", "putstring:" + qch_force_app);
}
private static Set<String> AoleyunOSApp = new HashSet<String>() {{
this.add("com.aoleyun.info");
this.add("com.aoleyun.os");
this.add("com.aoleyun.sn");
this.add("com.aoleyun.browser");
this.add("com.aoleyun.appstore");
this.add("com.aoleyunos.dop1");
this.add("com.aoleyunos.dop2");
this.add("com.aoleyunos.dop3");
this.add("com.jiepier.filemanager");
this.add("com.calendar.uiui");
this.add("com.notepad.uiui");
this.add("com.calculator.uiui");
this.add("com.alarmclock.uiui");
this.add("com.uiui.speed");
}};
public static String getRunningAppInfo(Context context) {
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> infoList = activityManager.getRunningServices(Integer.MAX_VALUE);
ArrayList<UploadAppInfo> appList = new ArrayList<UploadAppInfo>(); //用来存储获取的应用信息数据
// ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
// List<ActivityManager.RunningServiceInfo> infoList = activityManager.getRunningServices(Integer.MAX_VALUE);
//用来存储获取的应用信息数据
ArrayList<UploadAppInfo> appList = new ArrayList<>();
List<PackageInfo> packages = context.getPackageManager().getInstalledPackages(0);
String topPkg = ForegroundAppUtil.getForegroundPackageName(context);
Log.e(TAG, "getRunningAppInfo: " + topPkg);
for (PackageInfo packageInfo : packages) {
String packageName = packageInfo.packageName;
//排除桌面app和出厂自带app
if (desktopAPP.contains(packageName) || factoryapp.contains(packageName) || aoleyunAPP.contains(packageName)) {
if (desktopAPP.contains(packageName) || factoryapp.contains(packageName)) {
continue;
}
//排除所有系统应用,不显示
if (isSystemApp(context, packageName)) {
continue;
if (!AoleyunOSApp.contains(packageName)) {
continue;
}
} else {
//排除预装可以卸载的应用
if (canremove_systemapp.contains(packageName)) {
@@ -1156,19 +1179,22 @@ public class ApkUtils {
}
UploadAppInfo uploadAppInfo = new UploadAppInfo();
uploadAppInfo.setApp_name(packageInfo.applicationInfo.loadLabel(context.getPackageManager()).toString());
uploadAppInfo.setPackage_name(packageInfo.packageName);
Log.e("getRunningAppInfo", "getRunningAppInfo:" + packageInfo.packageName);
uploadAppInfo.setPackage_name(packageName);
Log.e("getRunningAppInfo", "getRunningAppInfo:" + packageName);
String firstInstallTime = TimeUtils.transferLongToDate(packageInfo.lastUpdateTime);
uploadAppInfo.setInstall_time(firstInstallTime);
uploadAppInfo.setVersionCode(String.valueOf(packageInfo.versionCode));
uploadAppInfo.setState(0);
uploadAppInfo.setApp_size(getPackageSize(context, packageInfo.applicationInfo.publicSourceDir));
uploadAppInfo.setVersionName(packageInfo.versionName);
for (ActivityManager.RunningServiceInfo info : infoList) {
if (info.process.contains(packageInfo.packageName)) {
uploadAppInfo.setState(1);
Log.e("getRunningAppInfo", "getRunningAppInfo running: " + packageInfo.packageName);
}
// for (ActivityManager.RunningServiceInfo info : infoList) {
// if (info.process.contains(packageName)) {
// uploadAppInfo.setState(1);
// Log.e("getRunningAppInfo", "getRunningAppInfo running: " + packageName);
// }
// }
if (topPkg.equals(packageName)) {
uploadAppInfo.setState(1);
}
appList.add(uploadAppInfo);
}