Multiple user account functionality Android bound?
I think it’s inevitable that at some point, we will see Android and Chrome OS unified under a single OS satisfying the likes of both the mobile and desktop landscapes. Well, at least that is what I envision even if it’s not exactly what Google has planned. Nevertheless, we may be seeing a move in that direction with this latest news that multiple user account code has been found in Jelly Bean 4.1.
The folks over at Phandroid, appear to have received a tip from a developer that multiple user account functionality has been discovered in the depths of Jelly Bean AOSP 4.1. In addition, it looks as though the code is throughout the OS providing substantial legitimacy to the notion of multiple user accounts forthcoming. This addition is definitely needed if Google intends on becoming a serious desktop OS contender.
Those of you who are knowledgeable with ADB, can check it for yourself by following this little walk through:
Exploring Jelly Bean’s Unfinished Multiple Profile Switching Discovery and Testing Performed by Kevin Barry of TeslaCoil Software.
Commands (using ADB Shell)
pm = PackageManager
am = ActivityManager
- pm create-user test (creates a user, ‘test’ in this example)
- am switch-user 1 (switches to user ‘1’, which is ‘test’)
- am switch-user 0 (switches to user ‘0’, which is your original configuration)
- pm list-users (lists all users on current device)
- pm remove-user 1 (removes the user ‘1’,which is ‘test’ in this example. Note that create-user takes a string name while remove-user takes an integer)
Things To Note:
- App settings are in /data/user/0/ with /data/data symlinked to it for backwards compatibility
- Some system settings are in /data/system/users/0/ rather than just /data/system/
- You can view 2011 commit messages in AOSP for all of these commands
- Visually you can not determine what user is currently active.
- Notifications and recent apps do not clear (remember… unfinished) and causes confusion to what user you’re on and will switch to whatever user that is running that particular app you click on.
- Static wallpapers do not switch per user (seems to be shared) but live wallpapers do switch with each user.
- Encrypted apps, which is all paid apps from the Play Store in Jellybean, will FC between users. For example: if you run a paid app from one user on a different user that did not originally install the app, you will get the following error: “E/AndroidRuntime( 8707): Caused by: java.lang.ClassNotFoundException: com.levelup.beautifulwidgets.BeautifulWidgets”
- Apps all have different settings which allows you to login or have different settings per user. (even gmail)
Example Shell (ADB):
shell@android:/ # pm list-users
So there you have it, some new and exciting additions coming to our beloved Android. When? Well, we obviously aren’t that good, but just knowing the functionality exists puts a smile on this face.
What do you think? Excited? Hit us back in the comments and let us know.