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

Commit 3d6a0b0f authored by Hai Zhang's avatar Hai Zhang
Browse files

Use ApexContext for APEX data directory.

Bug: 136503238
Test: manual
Change-Id: I8d6aa35b522b390576ae76bc4e5471ba4b2f8372
parent ba5a5356
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.permission.persistence;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.ApexContext;
import android.os.UserHandle;
import android.util.ArrayMap;
import android.util.AtomicFile;
@@ -48,6 +49,8 @@ public class RuntimePermissionsPersistenceImpl implements RuntimePermissionsPers

    private static final String LOG_TAG = RuntimePermissionsPersistenceImpl.class.getSimpleName();

    private static final String APEX_MODULE_NAME = "com.android.permission";

    private static final String RUNTIME_PERMISSIONS_FILE_NAME = "runtime-permissions.xml";

    private static final String TAG_PACKAGE = "package";
@@ -253,9 +256,8 @@ public class RuntimePermissionsPersistenceImpl implements RuntimePermissionsPers

    @NonNull
    private static File getFile(@NonNull UserHandle user) {
        // TODO: Use an API for this.
        File dataDirectory = new File("/data/misc_de/" + user.getIdentifier()
                + "/apexdata/com.android.permission");
        ApexContext apexContext = ApexContext.getApexContext(APEX_MODULE_NAME);
        File dataDirectory = apexContext.getDeviceProtectedDataDirForUser(user);
        return new File(dataDirectory, RUNTIME_PERMISSIONS_FILE_NAME);
    }
}
+5 −3
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.role.persistence;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.ApexContext;
import android.os.UserHandle;
import android.util.ArrayMap;
import android.util.ArraySet;
@@ -50,6 +51,8 @@ public class RolesPersistenceImpl implements RolesPersistence {

    private static final String LOG_TAG = RolesPersistenceImpl.class.getSimpleName();

    private static final String APEX_MODULE_NAME = "com.android.permission";

    private static final String ROLES_FILE_NAME = "roles.xml";

    private static final String TAG_ROLES = "roles";
@@ -209,9 +212,8 @@ public class RolesPersistenceImpl implements RolesPersistence {

    @NonNull
    private static File getFile(@NonNull UserHandle user) {
        // TODO: Use an API for this.
        File dataDirectory = new File("/data/misc_de/" + user.getIdentifier()
                + "/apexdata/com.android.permission");
        ApexContext apexContext = ApexContext.getApexContext(APEX_MODULE_NAME);
        File dataDirectory = apexContext.getDeviceProtectedDataDirForUser(user);
        return new File(dataDirectory, ROLES_FILE_NAME);
    }
}