Codota Logo
VUserManagerService
Code IndexAdd Codota to your IDE (free)

How to use
VUserManagerService
in
com.lody.virtual.server.pm

Best Java code snippets using com.lody.virtual.server.pm.VUserManagerService (Showing top 20 results out of 315)

  • Common ways to obtain VUserManagerService
private void myMethod () {
VUserManagerService v =
  • Codota IconVPackageManagerService pm;Object packagesLock;new VUserManagerService(VirtualCore.get().getContext(), pm, new char[0], packagesLock)
  • Smart code suggestions by Codota
}
origin: android-hacker/VirtualXposed

public static void systemReady() {
  VPackageManagerService instance = new VPackageManagerService();
  new VUserManagerService(VirtualCore.get().getContext(), instance, new char[0], instance.mPackages);
  gService.set(instance);
}
origin: android-hacker/VirtualXposed

@Override
public VUserInfo createUser(String name, int flags) {
  checkManageUsersPermission("Only the system can create users");
    synchronized (mInstallLock) {
      synchronized (mPackagesLock) {
        if (isUserLimitReachedLocked()) return null;
        int userId = getNextAvailableIdLocked();
        userInfo = new VUserInfo(userId, name, null, flags);
        File userPath = new File(mBaseUserPath, Integer.toString(userId));
        VEnvironment.getUserSystemDirectory(userInfo.id).mkdirs();
        mUsers.put(userId, userInfo);
        writeUserListLocked();
        writeUserLocked(userInfo);
        mPm.createNewUser(userId, userPath);
        userInfo.partial = false;
        writeUserLocked(userInfo);
        updateUserIdsLocked();
origin: android-hacker/VirtualXposed

@Override
public void setGuestEnabled(boolean enable) {
  checkManageUsersPermission("enable guest users");
  synchronized (mPackagesLock) {
    if (mGuestEnabled != enable) {
      mGuestEnabled = enable;
      // Erase any guest user that currently exists
      for (int i = 0; i < mUsers.size(); i++) {
        VUserInfo user = mUsers.valueAt(i);
        if (!user.partial && user.isGuest()) {
          if (!enable) {
            removeUser(user.id);
          }
          return;
        }
      }
      // No guest was found
      if (enable) {
        createUser("Guest", VUserInfo.FLAG_GUEST);
      }
    }
  }
}
origin: android-hacker/VirtualXposed

@Override
public int getUserSerialNumber(int userHandle) {
  synchronized (mPackagesLock) {
    if (!exists(userHandle)) return -1;
    return getUserInfoLocked(userHandle).serialNumber;
  }
}
origin: android-hacker/VirtualXposed

private void checkUserId(int userId) {
  if (!VUserManagerService.get().exists(userId)) {
    throw new SecurityException("Invalid userId " + userId);
  }
}
origin: android-hacker/VirtualXposed

@Override
public void setUserIcon(int userId, Bitmap bitmap) {
  checkManageUsersPermission("update users");
  synchronized (mPackagesLock) {
    VUserInfo info = mUsers.get(userId);
    if (info == null || info.partial) {
      VLog.w(LOG_TAG, "setUserIcon: unknown user #" + userId);
      return;
    }
    writeBitmapLocked(info, bitmap);
    writeUserLocked(info);
  }
  sendUserInfoChangedBroadcast(userId);
}
origin: android-hacker/VirtualXposed

@Override
public int[] getPackageInstalledUsers(String packageName) {
  PackageSetting ps = PackageCacheManager.getSetting(packageName);
  if (ps != null) {
    IntArray installedUsers = new IntArray(5);
    int[] userIds = VUserManagerService.get().getUserIds();
    for (int userId : userIds) {
      if (ps.readUserState(userId).installed) {
        installedUsers.add(userId);
      }
    }
    return installedUsers.getAll();
  }
  return new int[0];
}
origin: android-hacker/VirtualXposed

private void readUserListLocked() {
  mGuestEnabled = false;
  if (!mUserListFile.exists()) {
    fallbackToSingleUserLocked();
    return;
      fallbackToSingleUserLocked();
      return;
      if (type == XmlPullParser.START_TAG && parser.getName().equals(TAG_USER)) {
        String id = parser.getAttributeValue(null, ATTR_ID);
        VUserInfo user = readUser(Integer.parseInt(id));
    updateUserIdsLocked();
    upgradeIfNecessary();
  } catch (IOException ioe) {
    fallbackToSingleUserLocked();
  } catch (XmlPullParserException pe) {
    fallbackToSingleUserLocked();
  } finally {
    if (fis != null) {
origin: android-hacker/VirtualXposed

@Override
public void setUserName(int userId, String name) {
  checkManageUsersPermission("rename users");
  boolean changed = false;
  synchronized (mPackagesLock) {
    VUserInfo info = mUsers.get(userId);
    if (info == null || info.partial) {
      VLog.w(LOG_TAG, "setUserName: unknown user #" + userId);
      return;
    }
    if (name != null && !name.equals(info.name)) {
      info.name = name;
      writeUserLocked(info);
      changed = true;
    }
  }
  if (changed) {
    sendUserInfoChangedBroadcast(userId);
  }
}
origin: android-hacker/VirtualXposed

public void makeInitialized(int userId) {
  checkManageUsersPermission("makeInitialized");
  synchronized (mPackagesLock) {
    VUserInfo info = mUsers.get(userId);
    if (info == null || info.partial) {
      VLog.w(LOG_TAG, "makeInitialized: unknown user #" + userId);
    }
    if ((info.flags& VUserInfo.FLAG_INITIALIZED) == 0) {
      info.flags |= VUserInfo.FLAG_INITIALIZED;
      writeUserLocked(info);
    }
  }
}
origin: android-hacker/VirtualXposed

@Override
public int getUserHandle(int userSerialNumber) {
  synchronized (mPackagesLock) {
    for (int userId : mUserIds) {
      if (getUserInfoLocked(userId).serialNumber == userSerialNumber) return userId;
    }
    // Not found
    return -1;
  }
}
origin: android-hacker/VirtualXposed

@Override
public void userStopped(int userId) {
  finishRemoveUser(userId);
}
@Override
origin: android-hacker/VirtualXposed

@Override
public void wipeUser(int userHandle) {
  checkManageUsersPermission("wipe user");
  // TODO:
}
origin: android-hacker/VirtualXposed

@Override
public boolean onCreate() {
  Context context = getContext();
  DaemonService.startup(context);
  if (!VirtualCore.get().isStartup()) {
    return true;
  }
  VPackageManagerService.systemReady();
  addService(ServiceManagerNative.PACKAGE, VPackageManagerService.get());
  VActivityManagerService.systemReady(context);
  addService(ServiceManagerNative.ACTIVITY, VActivityManagerService.get());
  addService(ServiceManagerNative.USER, VUserManagerService.get());
  VAppManagerService.systemReady();
  addService(ServiceManagerNative.APP, VAppManagerService.get());
  BroadcastSystem.attach(VActivityManagerService.get(), VAppManagerService.get());
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    addService(ServiceManagerNative.JOB, VJobSchedulerService.get());
  }
  VNotificationManagerService.systemReady(context);
  addService(ServiceManagerNative.NOTIFICATION, VNotificationManagerService.get());
  VAppManagerService.get().scanApps();
  VAccountManagerService.systemReady();
  addService(ServiceManagerNative.ACCOUNT, VAccountManagerService.get());
  addService(ServiceManagerNative.VS, VirtualStorageService.get());
  addService(ServiceManagerNative.DEVICE, VDeviceManagerService.get());
  addService(ServiceManagerNative.VIRTUAL_LOC, VirtualLocationService.get());
  return true;
}
origin: android-hacker/VirtualXposed

  private void checkUserId(int userId) {
    if (!VUserManagerService.get().exists(userId)) {
      throw new IllegalStateException("Invalid userId " + userId);
    }
  }
}
origin: android-hacker/VirtualXposed

@Override
public boolean clearPackage(String packageName) throws RemoteException {
  try {
    BroadcastSystem.get().stopApp(packageName);
    VActivityManagerService.get().killAppByPkg(packageName, VUserHandle.USER_ALL);
    for (int id : VUserManagerService.get().getUserIds()) {
      FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(id, packageName));
      FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(id, packageName));
    }
    return true;
  } catch (Exception e) {
    return false;
  }
}
origin: bzsome/VirtualApp-x326

@Override
public void setUserIcon(int userId, Bitmap bitmap) {
  checkManageUsersPermission("update users");
  synchronized (mPackagesLock) {
    VUserInfo info = mUsers.get(userId);
    if (info == null || info.partial) {
      VLog.w(LOG_TAG, "setUserIcon: unknown user #" + userId);
      return;
    }
    writeBitmapLocked(info, bitmap);
    writeUserLocked(info);
  }
  sendUserInfoChangedBroadcast(userId);
}
origin: bzsome/VirtualApp-x326

private void readUserListLocked() {
  mGuestEnabled = false;
  if (!mUserListFile.exists()) {
    fallbackToSingleUserLocked();
    return;
      fallbackToSingleUserLocked();
      return;
      if (type == XmlPullParser.START_TAG && parser.getName().equals(TAG_USER)) {
        String id = parser.getAttributeValue(null, ATTR_ID);
        VUserInfo user = readUser(Integer.parseInt(id));
    updateUserIdsLocked();
    upgradeIfNecessary();
  } catch (IOException ioe) {
    fallbackToSingleUserLocked();
  } catch (XmlPullParserException pe) {
    fallbackToSingleUserLocked();
  } finally {
    if (fis != null) {
origin: bzsome/VirtualApp-x326

@Override
public void setUserName(int userId, String name) {
  checkManageUsersPermission("rename users");
  boolean changed = false;
  synchronized (mPackagesLock) {
    VUserInfo info = mUsers.get(userId);
    if (info == null || info.partial) {
      VLog.w(LOG_TAG, "setUserName: unknown user #" + userId);
      return;
    }
    if (name != null && !name.equals(info.name)) {
      info.name = name;
      writeUserLocked(info);
      changed = true;
    }
  }
  if (changed) {
    sendUserInfoChangedBroadcast(userId);
  }
}
origin: android-hacker/VirtualXposed

checkManageUsersPermission("Only the system can remove users");
final VUserInfo user;
synchronized (mPackagesLock) {
  writeUserLocked(user);
com.lody.virtual.server.pmVUserManagerService

Most used methods

  • <init>
    Available for testing purposes.
  • checkManageUsersPermission
    Enforces that only the system UID or root's UID or apps that have the {android.Manifest.permission.M
  • createUser
  • exists
  • fallbackToSingleUserLocked
  • finishRemoveUser
  • get
  • getNextAvailableIdLocked
    Returns the next available user id, filling in any holes in the ids. TODO: May not be a good idea to
  • getUserIds
    Returns an array of user ids. This array is cached here for quick access, so do not modify or cache
  • getUserInfoLocked
  • isUserLimitReachedLocked
    Check if we've hit the limit of how many users can be created.
  • readIntAttribute
  • isUserLimitReachedLocked,
  • readIntAttribute,
  • readLongAttribute,
  • readUser,
  • readUserListLocked,
  • removeDirectoryRecursive,
  • removeUser,
  • removeUserStateLocked,
  • sendUserInfoChangedBroadcast,
  • updateUserIdsLocked

Popular in Java

  • Parsing JSON documents to java classes using gson
  • getSystemService (Context)
  • getExternalFilesDir (Context)
  • startActivity (Activity)
  • Menu (java.awt)
  • LinkedHashMap (java.util)
    Hash table and linked list implementation of the Map interface, with predictable iteration order. Th
  • Annotation (javassist.bytecode.annotation)
    The annotation structure.An instance of this class is returned bygetAnnotations() in AnnotationsAttr
  • Filter (javax.servlet)
    A filter is an object that performs filtering tasks on either the request to a resource (a servlet o
  • JFileChooser (javax.swing)
  • Location (org.springframework.beans.factory.parsing)
    Class that models an arbitrary location in a Resource.Typically used to track the location of proble
Codota Logo
  • Products

    Search for Java codeSearch for JavaScript codeEnterprise
  • IDE Plugins

    IntelliJ IDEAWebStormAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogCodota Academy Plugin user guide Terms of usePrivacy policyJava Code IndexJavascript Code Index
Get Codota for your IDE now