29 May 2011

MobileMultiUser - sharing iPad by switching user accounts, multi user support for iOS device

How many iPads do you have?
Most of you and I have only one iPad at home.
iPad is post-PC device because your grand mother can use it, for example.
One and big problem occurs when you do not want to share your personal mail account or web bookmark with your family.

So I developed a tool MobileMultiUser to switch user account on iPad/iPhone/iPod touch like Mac and PC.

Notice: JB is required and your command line operations are also required on this version.
Notice: Before you use this tool, you should backup your iOS device with iTunes, and you should duplicate the backup folder to prevent overwriting the original backup.

MobileMultiUser for iOS Prototype 1 (build #001 2011-05-16) [Download]

Features of MobileMultiUser:
  • Icons for user accounts are placed at home screen of your iPad/iPhone/iPod touch.
    Touch the icon to switch user environment.
  • What are saved between users:
    • Preferences of standard apps
    • icon position and wall paper (SpringBoard settings)
    • settings and app data for Safari, Mail, and Notes
    • Web Clips icon
    • Flipboard's settings and app data
  • What are shared between users:
    • setting and app data for apps not listed above.
      For example, iTunes, iBooks, Pictures, YouTube and your installed apps.
  • You can add a user by using following commands;
    • cloneUser
      Creates new user environment by copying the current user environment.
    • createUserIcon [-icon color]
      Creates specified user's icon on home screen.
      Because super user privilege is required to create icon, so you should invoke this command after su command.
  • You can use MobileMultiUser on iPad, iPhone and iPod touch.
    I tested on iPad with iOS 4.3.1 and iPod touch 4gen with iOS 4.3.1.
How to install:
  • Cydia packages required are; OpenSSH, Erica Utilities, Tape Archive (tar), and sed.
  • Download MobileMultiUser-001.tar.gz from above link.
    After downlod it to your PC/Mac, copy it to your iPad.

    $ scp MobileMultiUser-001.tar.gz mobile@<ip address of ipad>

  • Extract the package into /var/mobile/Library/AddressBook/MMU-parasite/ .
    MobileMutiUser parasites to AddressBooks folder, so its data will be backed up by iTunes.

    $ ssh mobile@<ip address of ipad>
    ipad$ cd /var/mobile/Library/AddressBook/
    ipad$ tar xzvf ~/MobileMultiUser-001.tar.gz

  • Create the first user named "defaultUser".

    ipad$ cd /var/mobile/Library/AddressBook/MMU-parasite/
    ipad$ ./saveCurUser
    ipad$ su
    # ./createUserIcon defaultUser
    # exit

  • Create additional user (Taro in following command).

    ipad$ cd /var/mobile/Library/AddressBook/MMU-parasite/
    ipad$ ./cloneUser Taro
    ipad$ su
    # ./createUserIcon Taro
    # exit

  • After add a user's icon, you should respring to see the new icon.

    ipad$ respring

Limitations of current version:
  • There are no way to display the current user name.
    You can set individual wall paper for each user to distinguish between them.
    If you tap current user's icon on home screen, no action are occurred.
  • You can save the user's environment only for applications listed at features section with current version.
  • You have to invoke command line tool to create new user.
  • System keychain database is shared between users.
    For example, if user-A and user-B defines same gmail account then the password are shared, and if user-A deletes the gmail account then user-B's gmail's password will be cleared.
    User-B could define gmail's password again.
  • There is no password protection between users.
This tool is provided on an "as is" without warranty of any kind.
Feel free to post comment or e-mail to me when you have any questions, suggestions or encouragement.

[Japanese version]