微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android.app.admin.SystemUpdatePolicy的实例源码

项目:android-testdpc    文件SystemUpdatePolicyFragment.java   
private void setSystemUpdatePolicy() {
    SystemUpdatePolicy newPolicy;
    switch (mSystemUpdatePolicySelection.getCheckedRadioButtonId()) {
        case R.id.system_update_policy_automatic:
            newPolicy = SystemUpdatePolicy.createAutomaticInstallPolicy();
            break;
        case R.id.system_update_policy_Windowed:
            newPolicy = SystemUpdatePolicy.createWindowedInstallPolicy(
                    mMaintenanceStart,mMaintenanceEnd);
            break;
        case R.id.system_update_policy_postpone:
            newPolicy = SystemUpdatePolicy.createPostponeInstallPolicy();
            break;
        case R.id.system_update_policy_none:
        default:
            newPolicy = null;
    }
    mDpm.setSystemUpdatePolicy(DeviceAdminReceiver.getComponentName(getActivity()),newPolicy);
}
项目:android-testdpc    文件SystemUpdatePolicyFragment.java   
private void reloadSystemUpdatePolicy() {
    SystemUpdatePolicy policy = mDpm.getSystemUpdatePolicy();
    String policyDescription = "UnkNown";

    if (policy == null) {
        policyDescription = "None";
        mSystemUpdatePolicySelection.check(R.id.system_update_policy_none);
        mMaintenanceWindowDetails.setVisibility(View.INVISIBLE);
    } else {
        switch (policy.getPolicyType()) {
            case SystemUpdatePolicy.TYPE_INSTALL_AUTOMATIC:
                policyDescription = "Automatic";
                mSystemUpdatePolicySelection.check(R.id.system_update_policy_automatic);
                mMaintenanceWindowDetails.setVisibility(View.INVISIBLE);
                break;
            case SystemUpdatePolicy.TYPE_INSTALL_WINDOWED: {
                mMaintenanceStart = policy.getInstallWindowStart();
                mMaintenanceEnd = policy.getInstallWindowEnd();
                policyDescription = String.format("Windowed: %s-%s",formatMinutes(mMaintenanceStart),formatMinutes(mMaintenanceEnd));
                updateMaintenanceWindowdisplay();

                mSystemUpdatePolicySelection.check(R.id.system_update_policy_Windowed);
                mMaintenanceWindowDetails.setVisibility(View.VISIBLE);
                break;
            }
            case SystemUpdatePolicy.TYPE_POSTPONE:
                policyDescription = "Postpone";
                mSystemUpdatePolicySelection.check(R.id.system_update_policy_postpone);
                mMaintenanceWindowDetails.setVisibility(View.INVISIBLE);
                break;
        }
    }
    mCurrentSystemUpdatePolicy.setText(policyDescription);
}
项目:cosu    文件LockedActivity.java   
private void setDefaultCosuPolicies(boolean active){
    // set user restrictions
    setUserRestriction(UserManager.disALLOW_SAFE_BOOT,active);
    setUserRestriction(UserManager.disALLOW_FACTORY_RESET,active);
    setUserRestriction(UserManager.disALLOW_ADD_USER,active);
    setUserRestriction(UserManager.disALLOW_MOUNT_PHYSICAL_MEDIA,active);
    setUserRestriction(UserManager.disALLOW_ADJUST_VOLUME,active);

    // disable keyguard and status bar
    mDevicePolicyManager.setKeyguarddisabled(mAdminComponentName,active);
    mDevicePolicyManager.setStatusBardisabled(mAdminComponentName,active);

    // enable STAY_ON_WHILE_PLUGGED_IN
    enableStayOnWhilePluggedIn(active);

    // set system update policy
    if (active){
        mDevicePolicyManager.setSystemUpdatePolicy(mAdminComponentName,SystemUpdatePolicy.createWindowedInstallPolicy(60,120));
    } else {
        mDevicePolicyManager.setSystemUpdatePolicy(mAdminComponentName,null);
    }

    // set this Activity as a lock task package

    mDevicePolicyManager.setLockTaskPackages(mAdminComponentName,active ? new String[]{getPackageName()} : new String[]{});

    IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MAIN);
    intentFilter.addCategory(Intent.CATEGORY_HOME);
    intentFilter.addCategory(Intent.CATEGORY_DEFAULT);

    if (active) {
        // set Cosu activity as home intent receiver so that it is started
        // on reboot
        mDevicePolicyManager.addPersistentPreferredActivity(
                mAdminComponentName,intentFilter,new ComponentName(
                        getPackageName(),LockedActivity.class.getName()));
    } else {
        mDevicePolicyManager.clearPackagePersistentPreferredActivities(
                mAdminComponentName,getPackageName());
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。