[app] Fix scope list logic (#178)

This commit is contained in:
tehcneko 2021-02-23 18:37:31 +08:00 committed by GitHub
parent 6aed74acdd
commit 04cdb6c950
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 5 deletions

View File

@ -114,7 +114,11 @@ public class ConfigManager {
if (applications == null) {
return list;
}
applications.forEach(application -> list.add(new ScopeAdapter.ApplicationWithEquals(application)));
applications.forEach(application -> {
if (!application.packageName.equals(packageName)) {
list.add(new ScopeAdapter.ApplicationWithEquals(application));
}
});
} catch (RemoteException | NullPointerException e) {
Log.e(App.TAG, Log.getStackTraceString(e));
}

View File

@ -139,6 +139,10 @@ public class ScopeAdapter extends RecyclerView.Adapter<ScopeAdapter.ViewHolder>
boolean emptyCheckedList = checkedList.isEmpty();
for (PackageInfo info : appList) {
int uid = info.applicationInfo.uid;
if (info.packageName.equals("android") && uid / 100000 != 0) {
continue;
}
ApplicationWithEquals application = new ApplicationWithEquals(info.packageName, uid / 100000);
installedList.add(application);
@ -174,13 +178,9 @@ public class ScopeAdapter extends RecyclerView.Adapter<ScopeAdapter.ViewHolder>
if (info.packageName.equals(this.modulePackageName)) {
return true;
}
if (info.packageName.equals(BuildConfig.APPLICATION_ID)) {
return true;
}
if (info.packageName.equals("android")) {
return app.userId != 0;
}
if (checkedList.contains(app)) {
return false;
}