Permission

Here are the permissions required for using Fabricated RRO

To work with Fabricated RROs, you need system-level permissions. The specific permission required is:

android.permission.CHANGE_OVERLAY_PACKAGES

This is a signature|privileged permission, which means it's not available to regular third-party apps. It's typically only granted to system apps or apps signed with the platform certificate.

Here's more detail on the permission requirements and how to declare them:

  1. Permission Declaration: In your app's AndroidManifest.xml, you would need to declare the use of this permission:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.fabricatedrroapp">

    <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES" />

    <!-- ... rest of your manifest ... -->

</manifest>
  1. System App or Privileged App: Your app needs to be either:

    • A system app (located in /system/app or /system/priv-app)

    • Signed with the platform certificate

  2. SELinux Policy: Depending on your specific Android version and OEM modifications, you might also need appropriate SELinux policies in place to allow your app to interact with the OverlayManagerService.

  3. Additional Permissions: Depending on what your overlay is doing, you might need additional permissions. For example:

    • android.permission.INTERACT_ACROSS_USERS if you're applying overlays across different users

    • android.permission.WRITE_SECURE_SETTINGS if your overlay modifies secure settings

Last updated