Skip to content

Instantly share code, notes, and snippets.

@Akianonymus
Last active May 19, 2025 20:12
Show Gist options
  • Save Akianonymus/1fb3c040080f79e7a015c7948e874499 to your computer and use it in GitHub Desktop.
Save Akianonymus/1fb3c040080f79e7a015c7948e874499 to your computer and use it in GitHub Desktop.
Create multiple profiles for ISLAND app

Setup multiple island spaces

Note: Must have an work profile already setup, So that we can modify fw.sys.max_profiles to allow more work profiles

su # to gain root access
resetprop ro.debuggable 1 
am restart

Modify fw.sys.max_profiles prop

setprop fw.sys.max_profiles 10

Create new work profile

# this is the user id of the initial island which was setup from the application
exid="10"
id="$(pm create-user --profileOf 0 --managed Island | grep -Eo '[0-9]+')"
echo "ID: ${id}"

Open /data/system/users/11.xml and add following code below <name> Island </name> but above <user>

where 11 is the user id of newly created work profile

<restrictions no_wallpaper="true" />
<device_policy_local_restrictions>
    <restrictions_user user_id="10">
        <restrictions allow_parent_profile_app_linking="true" />
    </restrictions_user>
</device_policy_local_restrictions>

It should look like this

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<user id="10" serialNumber="28" flags="4144" type="android.os.usertype.profile.MANAGED" created="1652171823625" lastLoggedIn="1652351262370" lastLoggedInFingerprint="Sat Apr 23 21:25:20 IST 2022" profileGroupId="0" profileBadge="0">
    <name> Island </name>
    <restrictions no_wallpaper="true" />
    <device_policy_local_restrictions>
        <restrictions_user user_id="10">
            <restrictions allow_parent_profile_app_linking="true" />
        </restrictions_user>
    </device_policy_local_restrictions>
    <lastRequestQuietModeEnabledCall>1652340558380</lastRequestQuietModeEnabledCall>
</user>

Execute these commands

cd "/data/system/users/${exid:?}" || exit 1
cp app_idle_stats.xml appwidgets.xml \
   device_policies.xml \
   package-restrictions.xml profile_owner.xml \
   settings_secure.xml settings_ssaid.xml settings_system.xml \
   "/data/system/users/${id:?}/"
@e-t-l
Copy link

e-t-l commented Sep 5, 2024

No. This requires editing the files of the operating system itself in /data/system. Shizuku does not provide true root access, it provides apps with capabilities of unrooted ADB, which cannot access system folders.

@423428309843290
Copy link

Hello friend, how are you? When I ran the command to create the new user work profile with the command below, I got the error below. Can you help me? I can pay for your support friend:
command:

this is the user id of the initial island which was setup from the application

exid="10"
id="$(pm create-user --profileOf 0 --managed Island | grep -Eo '[0-9]+')"
echo "ID: ${id}"

error:
pstar:/ # # this is the user id of the initial island which was setup from the application
]+')"
echo "pstar:/ # exid="10"
{id}"pstar:/ # id="$(pm create-user --profileOf 0 --managed Island | grep -Eo '[0-9]+')"
Error: android.os.ServiceSpecificException: Cannot add more profiles of type android.os.usertype.profile.MANAGED for user 0 (code 6)
Error: couldn't create User.
1|pstar:/ # echo "ID: ${id}"
ID:

@danielsanaw
Copy link

same issue, you found any solution?

RED8D7:/ # id="$(pm create-user --profileOf 0 --managed Island | grep -Eo '[0-9]+')"
Error: android.os.ServiceSpecificException: Cannot add more profiles of type android.os.usertype.profile.MANAGED for user 0 (code 6)
Error: couldn't create User.
image
Screenshot 2025-05-20 014201

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment