Moved restricted profile setup logic to UserManagerService
Bug: 24212155 Change-Id: Iea214877dd856e830a42467780b7407b8991c52d
This commit is contained in:
@@ -38,6 +38,7 @@ import android.content.pm.PackageManager;
|
|||||||
import android.content.pm.PackageManager.NameNotFoundException;
|
import android.content.pm.PackageManager.NameNotFoundException;
|
||||||
import android.content.pm.ResolveInfo;
|
import android.content.pm.ResolveInfo;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
import android.os.Binder;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.RemoteCallback;
|
import android.os.RemoteCallback;
|
||||||
@@ -472,7 +473,7 @@ public class DeviceAdminAdd extends Activity {
|
|||||||
|
|
||||||
private void addDeviceAdminPolicies(boolean showDescription) {
|
private void addDeviceAdminPolicies(boolean showDescription) {
|
||||||
if (!mAdminPoliciesInitialized) {
|
if (!mAdminPoliciesInitialized) {
|
||||||
boolean isOwner = UserHandle.getCallingUserHandle().isOwner();
|
boolean isOwner = Binder.getCallingUserHandle().isOwner();
|
||||||
for (DeviceAdminInfo.PolicyInfo pi : mDeviceAdmin.getUsedPolicies()) {
|
for (DeviceAdminInfo.PolicyInfo pi : mDeviceAdmin.getUsedPolicies()) {
|
||||||
int descriptionId = isOwner ? pi.description : pi.descriptionForSecondaryUsers;
|
int descriptionId = isOwner ? pi.description : pi.descriptionForSecondaryUsers;
|
||||||
int labelId = isOwner ? pi.label : pi.labelForSecondaryUsers;
|
int labelId = isOwner ? pi.label : pi.labelForSecondaryUsers;
|
||||||
|
@@ -36,6 +36,7 @@ import android.content.SyncInfo;
|
|||||||
import android.content.SyncStatusInfo;
|
import android.content.SyncStatusInfo;
|
||||||
import android.content.pm.ProviderInfo;
|
import android.content.pm.ProviderInfo;
|
||||||
import android.content.pm.UserInfo;
|
import android.content.pm.UserInfo;
|
||||||
|
import android.os.Binder;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
@@ -219,8 +220,7 @@ public class AccountSyncSettings extends AccountPreferenceBase {
|
|||||||
removePreference("dummy");
|
removePreference("dummy");
|
||||||
mAuthenticatorHelper.listenToAccountUpdates();
|
mAuthenticatorHelper.listenToAccountUpdates();
|
||||||
updateAuthDescriptions();
|
updateAuthDescriptions();
|
||||||
onAccountsUpdate(UserHandle.getCallingUserHandle());
|
onAccountsUpdate(Binder.getCallingUserHandle());
|
||||||
|
|
||||||
super.onResume();
|
super.onResume();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -396,23 +396,7 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
private UserInfo createRestrictedProfile() {
|
private UserInfo createRestrictedProfile() {
|
||||||
UserInfo newUserInfo = mUserManager.createRestrictedProfile(
|
UserInfo newUserInfo = mUserManager.createRestrictedProfile(
|
||||||
getResources().getString(R.string.user_new_profile_name));
|
getResources().getString(R.string.user_new_profile_name));
|
||||||
int userId = newUserInfo.id;
|
|
||||||
UserHandle user = new UserHandle(userId);
|
|
||||||
mUserManager.setUserRestriction(UserManager.DISALLOW_MODIFY_ACCOUNTS, true, user);
|
|
||||||
// Change the setting before applying the DISALLOW_SHARE_LOCATION restriction, otherwise
|
|
||||||
// the putIntForUser() will fail.
|
|
||||||
Secure.putIntForUser(getContentResolver(),
|
|
||||||
Secure.LOCATION_MODE, Secure.LOCATION_MODE_OFF, userId);
|
|
||||||
mUserManager.setUserRestriction(UserManager.DISALLOW_SHARE_LOCATION, true, user);
|
|
||||||
assignDefaultPhoto(newUserInfo);
|
assignDefaultPhoto(newUserInfo);
|
||||||
// Add shared accounts
|
|
||||||
AccountManager am = AccountManager.get(getActivity());
|
|
||||||
Account [] accounts = am.getAccounts();
|
|
||||||
if (accounts != null) {
|
|
||||||
for (Account account : accounts) {
|
|
||||||
am.addSharedAccount(account, user);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return newUserInfo;
|
return newUserInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user