Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7d333039 authored by Hai Zhang's avatar Hai Zhang
Browse files

Use getDeclaredShareLibraries() for role qualification checking.

Bug: 124452117
Test: build
Change-Id: If56ca2c66200697d30d9ad5ce8642f100e63f8c6
parent 1d876fd6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@
    <uses-permission android:name="android.permission.MANAGE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
    <uses-permission android:name="android.permission.ACCESS_SHARED_LIBRARIES" />
    <uses-permission android:name="com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER" />
    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" />
    <uses-permission android:name="android.permission.REQUEST_INCIDENT_REPORT_APPROVAL" />
+7 −2
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Process;
import android.os.UserHandle;
import android.util.ArrayMap;
@@ -447,12 +448,16 @@ public class Role {

        // TODO: STOPSHIP: Check for disabled packages?

        // TODO: STOPSHIP: Add and check PackageManager.getSharedLibraryInfo().

        if (applicationInfo.isInstantApp()) {
            return false;
        }

        PackageManager userPackageManager = UserUtils.getUserContext(context, user)
                .getPackageManager();
        if (!userPackageManager.getDeclaredSharedLibraries(packageName, 0).isEmpty()) {
            return false;
        }

        return true;
    }