File tree Expand file tree Collapse file tree 4 files changed +13
-7
lines changed
java/com/webileapps/safeguard Expand file tree Collapse file tree 4 files changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ android {
9
9
10
10
defaultConfig {
11
11
applicationId " com.webileapps.protect.sample"
12
- minSdk 24
12
+ minSdk 26
13
13
targetSdk 34
14
14
versionCode 1
15
15
versionName " 1.0"
Original file line number Diff line number Diff line change @@ -11,7 +11,7 @@ android {
11
11
compileSdk 34
12
12
13
13
defaultConfig {
14
- minSdk 24
14
+ minSdk 26
15
15
targetSdk 34
16
16
17
17
testInstrumentationRunner " androidx.test.runner.AndroidJUnitRunner"
Original file line number Diff line number Diff line change 6
6
<uses-permission android : name =" android.permission.ACCESS_NETWORK_STATE" />
7
7
<uses-permission android : name =" android.permission.READ_PHONE_STATE" />
8
8
<uses-permission android : name =" android.permission.ACCESS_WIFI_STATE" />
9
- <uses-permission android : name =" android.permission.QUERY_ALL_PACKAGES"
10
- tools : ignore =" QueryAllPackagesPermission" />
11
9
</manifest >
Original file line number Diff line number Diff line change 1
1
package com .webileapps .safeguard ;
2
2
3
+ import android .annotation .SuppressLint ;
3
4
import android .content .Context ;
4
5
import android .content .pm .ApplicationInfo ;
5
6
import android .content .pm .PackageManager ;
@@ -154,14 +155,21 @@ public boolean rootClockingCheck() {
154
155
155
156
private List <String > getAllInstalledApps () {
156
157
PackageManager packageManager = context .getPackageManager ();
157
- List <android .content .pm .PackageInfo > installedPackages = packageManager .getInstalledPackages (0 );
158
+
159
+ // Query installed apps (ensure QUERY_ALL_PACKAGES is handled)
160
+ List <android .content .pm .PackageInfo > installedPackages = packageManager .getInstalledPackages (PackageManager .GET_META_DATA );
158
161
List <String > packageNames = new ArrayList <>();
159
162
160
163
for (android .content .pm .PackageInfo packageInfo : installedPackages ) {
161
- if ((packageInfo .applicationInfo .flags & ApplicationInfo .FLAG_SYSTEM ) == 0 ) {
162
- packageNames .add (packageInfo .packageName );
164
+ ApplicationInfo appInfo = packageInfo .applicationInfo ;
165
+
166
+ // Ensure it's a user-installed app
167
+ if ((appInfo .flags & ApplicationInfo .FLAG_SYSTEM ) == 0 ||
168
+ (appInfo .flags & ApplicationInfo .FLAG_UPDATED_SYSTEM_APP ) != 0 ) {
169
+ packageNames .add (appInfo .packageName );
163
170
}
164
171
}
165
172
return packageNames ;
166
173
}
174
+
167
175
}
You can’t perform that action at this time.
0 commit comments