[APP] Multi-User App Share

Search This thread

jeepguy04

Member
Jun 8, 2006
48
47
I have created an app that will help share apps across users on google's new 4.2 multi user feature.

Thanks to mentose457 and unwired for giving me the idea.
see this thread (http://xdaforums.com/showthread.php?t=1994169)

It works by removing package elements from user's package-restriction.xml file to add the app and adding the package element back to remove the app. (located at \data\system\users\10\package-restrictions.xml where 10 is the user's id)

This is quickly thrown together and will likely have a ton of bugs, but I wanted to go ahead and get it out there for testing.

- This is BETA
-You must have ROOT
- This changes system data on non documented files it could screw something up.
- I'm not responsible for any problems this causes or lost data or bricked or broken devices
- please use cation

- it is currently built to run on main user to enable or disable apps on secondary users (once root is fully working on secondary users I will see about making it run correctly on secondary user's account)
- not tested thoroughly with paid apps*
- does not currently support system apps**
- due to the way I pull the app list from the package manager some installed apps may not show as available to add/remove
- apps installed first on a secondary user's profile will probably not show in the list to add/remove

*paid apps seemed to work but I did not have internet access during testing. My theory is that any paid apps that use Google's license verification will not work or not work for long. So adding your Google Account to the secondary user's play store is probably still the best way to share paid apps.

**The entries in the xml for system apps is different. Therefore I will have to research them more before getting it to work or deciding not to mess with those apps. Currently some will show not installed on other users even though they are and removing/adding them will not work correctly.


------> DOWNLOAD HERE https://play.google.com/store/apps/...tm_medium=forum&utm_campaign=app_announcement

I'd love to get feedback to what is working and what is not. Also if anybody figures out anything more about the package-restriction.xml file I'd love to hear it. Especially when it comes to system apps.
 

toidimaet

Senior Member
Aug 15, 2012
236
92
Thanks mate added my sons Google account and it is all running perfectly. Seperate saves and account details for apps and allowing me to share my paid ones with him :)
First review on play store is up.

Will have a mess around with apps and report back but it appears to be running sweet at the moment

Cheers danny...

Sent from my Nexus 7 using Tapatalk 2
 
M

mentose457

Guest
I wanted to chime in as well. It is working on AOKP. Thanks again jeepguy04.
 

DeadlyDazza

Senior Member
Jul 3, 2010
643
88
Strange, I'm rooted. Using root apps such as cache mate, titanium & sixaxis.
Multi user app enabler says not rooted.
So does root checker??
 
M

mentose457

Guest
On the first 'owner' account I'm rooted, but the second user account doesn't recognize root in apps shared through multi user app.

That is a known issue (if you want to call it that). For me it's not a problem as my second user is a guest just like on my computer.

Sent from my Galaxy Nexus using Tapatalk 2
 

rkuijpers

Senior Member
Aug 3, 2010
1,023
485
That is a known issue (if you want to call it that). For me it's not a problem as my second user is a guest just like on my computer.

Sent from my Galaxy Nexus using Tapatalk 2

I know, that's why I quoted the user I meant to answer ;)

It wasn't meant as a negative comment, as I think this app is very useful.
 

jeepguy04

Member
Jun 8, 2006
48
47
Does it works on nexus10 ?
Should work on any tablet running 4.2 (or phone if your custom rom enables the multiple user profiles)


some one post the apk my devices are not compatible lol
Currently I only have it available in the market to tablets to avoid confusion for people wondering why it doesn't work with their phone. Maybe I will change that since only nexus devices or phones with custom roms are running 4.2. Those users tend to be a little smarter and know if their phone has multiple user profiles or not.

Here is a link to the apk for anybody that can't see it in the market.


Do you think it is possible to have a shared folder for fotos and musik for multiple users?
The shared folder idea is interesting but beyond the scope of this app. Probably could do it with symlinks or something (not very knowledgeable in linux). Maybe I will look into it and either make another app or find a way to make it fit in with this app.
 

Saskmaster

New member
Dec 18, 2012
2
0
Saskatoon
Looking forward to trying on my p5113 CM 10.1

I have created an app that will help share apps across users on google's new 4.2 multi user feature.

Thanks to mentose457 and unwired for giving me the idea.
see this thread (http://xdaforums.com/showthread.php?t=1994169)

It works by removing package elements from user's package-restriction.xml file to add the app and adding the package element back to remove the app. (located at \data\system\users\10\package-restrictions.xml where 10 is the user's id)

This is quickly thrown together and will likely have a ton of bugs, but I wanted to go ahead and get it out there for testing.

- This is BETA
-You must have ROOT
- This changes system data on non documented files it could screw something up.
- I'm not responsible for any problems this causes or lost data or bricked or broken devices
- please use cation

- it is currently built to run on main user to enable or disable apps on secondary users (once root is fully working on secondary users I will see about making it run correctly on secondary user's account)
- not tested thoroughly with paid apps*
- does not currently support system apps**
- due to the way I pull the app list from the package manager some installed apps may not show as available to add/remove
- apps installed first on a secondary user's profile will probably not show in the list to add/remove

*paid apps seemed to work but I did not have internet access during testing. My theory is that any paid apps that use Google's license verification will not work or not work for long. So adding your Google Account to the secondary user's play store is probably still the best way to share paid apps.

**The entries in the xml for system apps is different. Therefore I will have to research them more before getting it to work or deciding not to mess with those apps. Currently some will show not installed on other users even though they are and removing/adding them will not work correctly.


------> DOWNLOAD HERE https://play.google.com/store/apps/...tm_medium=forum&utm_campaign=app_announcement

I'd love to get feedback to what is working and what is not. Also if anybody figures out anything more about the package-restriction.xml file I'd love to hear it. Especially when it comes to system apps.

Great to see this is available
Thanks:good:
 

jeepguy04

Member
Jun 8, 2006
48
47
Why the full network access and google play billing service permissions?

Google Play billing service is for accepting donations via in app purchase. Under settings anybody can donate if they feel the app has value to them... so far I've gotten two $1 donations...lol

network access is for connecting to internet for ads and also for ACRA (Application Crash Report for Android) it basically sends error reports to me to help fix errors. It can be disabled under settings if you do not want it reporting errors.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 18
    I have created an app that will help share apps across users on google's new 4.2 multi user feature.

    Thanks to mentose457 and unwired for giving me the idea.
    see this thread (http://xdaforums.com/showthread.php?t=1994169)

    It works by removing package elements from user's package-restriction.xml file to add the app and adding the package element back to remove the app. (located at \data\system\users\10\package-restrictions.xml where 10 is the user's id)

    This is quickly thrown together and will likely have a ton of bugs, but I wanted to go ahead and get it out there for testing.

    - This is BETA
    -You must have ROOT
    - This changes system data on non documented files it could screw something up.
    - I'm not responsible for any problems this causes or lost data or bricked or broken devices
    - please use cation

    - it is currently built to run on main user to enable or disable apps on secondary users (once root is fully working on secondary users I will see about making it run correctly on secondary user's account)
    - not tested thoroughly with paid apps*
    - does not currently support system apps**
    - due to the way I pull the app list from the package manager some installed apps may not show as available to add/remove
    - apps installed first on a secondary user's profile will probably not show in the list to add/remove

    *paid apps seemed to work but I did not have internet access during testing. My theory is that any paid apps that use Google's license verification will not work or not work for long. So adding your Google Account to the secondary user's play store is probably still the best way to share paid apps.

    **The entries in the xml for system apps is different. Therefore I will have to research them more before getting it to work or deciding not to mess with those apps. Currently some will show not installed on other users even though they are and removing/adding them will not work correctly.


    ------> DOWNLOAD HERE https://play.google.com/store/apps/...tm_medium=forum&utm_campaign=app_announcement

    I'd love to get feedback to what is working and what is not. Also if anybody figures out anything more about the package-restriction.xml file I'd love to hear it. Especially when it comes to system apps.
    2
    Get AppShare instead, free version forces you to reboot after 3 changes before you can change more, slightly annoying but at least it works and doesn't share all apps like this one did :)

    Sent from my GT-I9300 using xda app-developers app
    1
    Yes. Symlinking the photos/music folders outside /data/ should work. But I don't have a 4.2 device(nor willing to set up an emulator) so I'm unsure.
    1
    Would you be so kind to share the apk also as i would like to try it on my Samsung galaxy s3 (would save me some time tinkering with the xml).

    Looks like you have disabled various devices on the play store, at least it isn't compatible with my device.

    Taptalked u see .. əəs n pəʞlɐʇdɐʇ
    He posted the apk in this post :)

    Sent from my Nexus 7 using xda premium
    1
    Goodmorging,

    I have used your app to setup a user account for my kids on my phone. I wanted to get rid of everything they can use to ****up, in fact, all I wanted to keep for them were some games.
    What I did to remove the play store was to ADD "enabled=3" to the xml file. There was no "enabled"item so your app couldn't change it to 3.
    Code:
    <pkg name="com.android.vending" [B]enabled="3"[/B]>
    <enabled-components>[INDENT] <item name="com.google.android.finsky.receivers.BootCompletedReceiver"/>
    <item name="com.android.vending.AssetBrowserActivity"/>
    <item name="com.google.android.finsky.receivers.AccountsChangedReceiver"/>
    <item name="com.google.android.finsky.receivers.PackageMonitorReceiver$RegisteredReceiver"/>
    [/INDENT]</enabled-components>
    <disabled-components>[INDENT] <item name="com.google.android.finsky.activities.DebugActivity"/>
    [/INDENT]</disabled-components>
    </pkg>
    The same goes for the following, where I added enabled is "2" with the same result.
    Code:
    pkg name="com.google.android.gm" enabled="2"
    pkg name="com.android.email" enabled="2"
    pkg name="com.android.gallery3d" enabled="2"
    One more thing, I think you use the sdcard/0 to copy some files to, user10_info.xml, user10_package-restrictions.xml and userlist.xml. I usually use /data/data/com.mypackage.name/files to copy files to that need to be modified or read (if not readable). That location is the result from
    Code:
    String data_storage_root = getBaseContext().getFilesDir().toString();
    Do we already know the difference between enabled = "1" enabled="2", enabled="3" (system apps??), inst="false" (for user apps that are installed before adding a user??) and inst="false" stopped="true" nl="true" (for user apps installed after adding a user??)