MCP Tools Reference: Android Device Management MCP Server

ابزار: list_policies

سیاست‌های مربوط به یک شرکت مشخص را فهرست می‌کند. به نام منبع شرکت در فیلد والد نیاز دارد (مثلاً enterprises/{enterpriseId}).

نمونه زیر نحوه استفاده از curl برای فراخوانی ابزار list_policies MCP را نشان می‌دهد.

درخواست کرل
                  
curl --location 'https://androidmanagement.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_policies",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

طرحواره ورودی

درخواست فهرست کردن سیاست‌های یک شرکت خاص.

درخواست سیاست های فهرست

نمایش JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string
}
فیلدها
parent

string

نام شرکت به شکل enterprises/{enterpriseId} .

pageSize

integer

اندازه صفحه درخواستی. اندازه واقعی صفحه ممکن است روی یک مقدار حداقل یا حداکثر ثابت باشد.

pageToken

string

یک توکن که صفحه‌ای از نتایج برگردانده شده توسط سرور را مشخص می‌کند.

طرحواره خروجی

پاسخ به درخواست فهرست کردن سیاست‌های یک شرکت معین.

پاسخ به سیاست‌ها

نمایش JSON
{
  "policies": [
    {
      object (Policy)
    }
  ],
  "nextPageToken": string
}
فیلدها
policies[]

object ( Policy )

فهرست سیاست‌ها.

nextPageToken

string

اگر نتایج بیشتری وجود داشته باشد، یک توکن برای بازیابی صفحه بعدی نتایج.

سیاست

نمایش JSON
{
  "name": string,
  "version": string,
  "applications": [
    {
      object (ApplicationPolicy)
    }
  ],
  "maximumTimeToLock": string,
  "screenCaptureDisabled": boolean,
  "cameraDisabled": boolean,
  "keyguardDisabledFeatures": [
    enum (KeyguardDisabledFeature)
  ],
  "defaultPermissionPolicy": enum (PermissionPolicy),
  "persistentPreferredActivities": [
    {
      object (PersistentPreferredActivity)
    }
  ],
  "openNetworkConfiguration": {
    object
  },
  "systemUpdate": {
    object (SystemUpdate)
  },
  "accountTypesWithManagementDisabled": [
    string
  ],
  "addUserDisabled": boolean,
  "adjustVolumeDisabled": boolean,
  "factoryResetDisabled": boolean,
  "installAppsDisabled": boolean,
  "mountPhysicalMediaDisabled": boolean,
  "modifyAccountsDisabled": boolean,
  "safeBootDisabled": boolean,
  "uninstallAppsDisabled": boolean,
  "statusBarDisabled": boolean,
  "keyguardDisabled": boolean,
  "minimumApiLevel": integer,
  "statusReportingSettings": {
    object (StatusReportingSettings)
  },
  "bluetoothContactSharingDisabled": boolean,
  "shortSupportMessage": {
    object (UserFacingMessage)
  },
  "longSupportMessage": {
    object (UserFacingMessage)
  },
  "passwordRequirements": {
    object (PasswordRequirements)
  },
  "wifiConfigsLockdownEnabled": boolean,
  "bluetoothConfigDisabled": boolean,
  "cellBroadcastsConfigDisabled": boolean,
  "credentialsConfigDisabled": boolean,
  "mobileNetworksConfigDisabled": boolean,
  "tetheringConfigDisabled": boolean,
  "vpnConfigDisabled": boolean,
  "wifiConfigDisabled": boolean,
  "createWindowsDisabled": boolean,
  "networkResetDisabled": boolean,
  "outgoingBeamDisabled": boolean,
  "outgoingCallsDisabled": boolean,
  "removeUserDisabled": boolean,
  "shareLocationDisabled": boolean,
  "smsDisabled": boolean,
  "unmuteMicrophoneDisabled": boolean,
  "usbFileTransferDisabled": boolean,
  "ensureVerifyAppsEnabled": boolean,
  "permittedInputMethods": {
    object (PackageNameList)
  },
  "stayOnPluggedModes": [
    enum (BatteryPluggedMode)
  ],
  "recommendedGlobalProxy": {
    object (ProxyInfo)
  },
  "setUserIconDisabled": boolean,
  "setWallpaperDisabled": boolean,
  "choosePrivateKeyRules": [
    {
      object (ChoosePrivateKeyRule)
    }
  ],
  "alwaysOnVpnPackage": {
    object (AlwaysOnVpnPackage)
  },
  "frpAdminEmails": [
    string
  ],
  "deviceOwnerLockScreenInfo": {
    object (UserFacingMessage)
  },
  "dataRoamingDisabled": boolean,
  "locationMode": enum (LocationMode),
  "networkEscapeHatchEnabled": boolean,
  "bluetoothDisabled": boolean,
  "complianceRules": [
    {
      object (ComplianceRule)
    }
  ],
  "blockApplicationsEnabled": boolean,
  "installUnknownSourcesAllowed": boolean,
  "debuggingFeaturesAllowed": boolean,
  "funDisabled": boolean,
  "autoTimeRequired": boolean,
  "permittedAccessibilityServices": {
    object (PackageNameList)
  },
  "appAutoUpdatePolicy": enum (AppAutoUpdatePolicy),
  "kioskCustomLauncherEnabled": boolean,
  "androidDevicePolicyTracks": [
    enum (AppTrack)
  ],
  "skipFirstUseHintsEnabled": boolean,
  "privateKeySelectionEnabled": boolean,
  "encryptionPolicy": enum (EncryptionPolicy),
  "usbMassStorageEnabled": boolean,
  "permissionGrants": [
    {
      object (PermissionGrant)
    }
  ],
  "playStoreMode": enum (PlayStoreMode),
  "setupActions": [
    {
      object (SetupAction)
    }
  ],
  "passwordPolicies": [
    {
      object (PasswordRequirements)
    }
  ],
  "policyEnforcementRules": [
    {
      object (PolicyEnforcementRule)
    }
  ],
  "kioskCustomization": {
    object (KioskCustomization)
  },
  "advancedSecurityOverrides": {
    object (AdvancedSecurityOverrides)
  },
  "personalUsagePolicies": {
    object (PersonalUsagePolicies)
  },
  "autoDateAndTimeZone": enum (AutoDateAndTimeZone),
  "oncCertificateProviders": [
    {
      object (OncCertificateProvider)
    }
  ],
  "crossProfilePolicies": {
    object (CrossProfilePolicies)
  },
  "preferentialNetworkService": enum (PreferentialNetworkService),
  "usageLog": {
    object (UsageLog)
  },
  "cameraAccess": enum (CameraAccess),
  "microphoneAccess": enum (MicrophoneAccess),
  "deviceConnectivityManagement": {
    object (DeviceConnectivityManagement)
  },
  "deviceRadioState": {
    object (DeviceRadioState)
  },
  "credentialProviderPolicyDefault": enum (CredentialProviderPolicyDefault),
  "printingPolicy": enum (PrintingPolicy),
  "displaySettings": {
    object (DisplaySettings)
  },
  "assistContentPolicy": enum (AssistContentPolicy),
  "workAccountSetupConfig": {
    object (WorkAccountSetupConfig)
  },
  "wipeDataFlags": [
    enum (WipeDataFlag)
  ],
  "enterpriseDisplayNameVisibility": enum (EnterpriseDisplayNameVisibility),
  "appFunctions": enum (AppFunctions),
  "defaultApplicationSettings": [
    {
      object (DefaultApplicationSetting)
    }
  ]
}
فیلدها
name

string

نام سیاست به شکل enterprises/{enterpriseId}/policies/{policyId} .

version

string ( int64 format)

نسخه سیاست. این یک فیلد فقط خواندنی است. هر بار که سیاست به‌روزرسانی می‌شود، نسخه آن افزایش می‌یابد.

applications[]

object ( ApplicationPolicy )

سیاستی که برای برنامه‌ها اعمال می‌شود. این می‌تواند حداکثر ۳۰۰۰ عنصر داشته باشد.

maximumTimeToLock

string ( int64 format)

حداکثر زمان فعالیت کاربر تا قفل شدن دستگاه (برحسب میلی‌ثانیه). مقدار ۰ به معنی عدم وجود محدودیت است.

screenCaptureDisabled

boolean

اینکه آیا ضبط صفحه نمایش غیرفعال است یا خیر.

cameraDisabled
(deprecated)

boolean

اگر camera_access روی هر مقداری غیر از CAMERA_ACCESS_UNSPECIFIED تنظیم شود، این هیچ تاثیری ندارد. در غیر این صورت، این فیلد غیرفعال بودن یا نبودن دوربین‌ها را کنترل می‌کند: اگر درست باشد، همه دوربین‌ها غیرفعال می‌شوند، در غیر این صورت در دسترس هستند. برای دستگاه‌های کاملاً مدیریت‌شده، این فیلد برای همه برنامه‌های روی دستگاه اعمال می‌شود. برای پروفایل‌های کاری، این فیلد فقط برای برنامه‌های موجود در پروفایل کاری اعمال می‌شود و دسترسی دوربین برنامه‌های خارج از پروفایل کاری بدون تغییر باقی می‌ماند.

keyguardDisabledFeatures[]

enum ( KeyguardDisabledFeature )

شخصی‌سازی‌های محافظ صفحه کلید، مانند ابزارک‌ها، غیرفعال شده‌اند.

defaultPermissionPolicy

enum ( PermissionPolicy )

سیاست پیش‌فرض مجوز برای درخواست‌های مجوز زمان اجرا.

persistentPreferredActivities[]

object ( PersistentPreferredActivity )

فعالیت‌های پیش‌فرضِ مدیریت‌کننده‌ی اینتنت.

openNetworkConfiguration

object ( Struct format)

پیکربندی شبکه برای دستگاه. برای اطلاعات بیشتر به پیکربندی شبکه‌ها مراجعه کنید.

systemUpdate

object ( SystemUpdate )

سیاست به‌روزرسانی سیستم، که نحوه اعمال به‌روزرسانی‌های سیستم‌عامل را کنترل می‌کند. اگر نوع به‌روزرسانی WINDOWED باشد، پنجره به‌روزرسانی به‌طور خودکار برای به‌روزرسانی‌های برنامه Play نیز اعمال می‌شود.

توجه: به‌روزرسانی‌های سیستمی گوگل پلی (که به‌روزرسانی‌های اصلی نیز نامیده می‌شوند) به‌طور خودکار دانلود می‌شوند و برای نصب آنها نیاز به راه‌اندازی مجدد دستگاه است. برای جزئیات بیشتر به بخش اصلی در مدیریت به‌روزرسانی‌های سیستم مراجعه کنید.

accountTypesWithManagementDisabled[]

string

انواع حساب‌هایی که توسط کاربر قابل مدیریت نیستند.

addUserDisabled

boolean

اینکه آیا افزودن کاربران و پروفایل‌های جدید غیرفعال است یا خیر. برای دستگاه‌هایی که managementMode آنها DEVICE_OWNER است، این فیلد نادیده گرفته می‌شود و کاربر هرگز مجاز به اضافه کردن یا حذف کاربران نیست.

adjustVolumeDisabled

boolean

آیا تنظیم صدای اصلی غیرفعال است یا خیر. همچنین دستگاه را بی‌صدا می‌کند. این تنظیم فقط روی دستگاه‌های کاملاً مدیریت‌شده تأثیر دارد.

factoryResetDisabled

boolean

اینکه آیا بازنشانی به تنظیمات کارخانه غیرفعال است یا خیر.

installAppsDisabled

boolean

اینکه آیا نصب برنامه‌ها توسط کاربر غیرفعال است یا خیر.

mountPhysicalMediaDisabled

boolean

اینکه آیا نصب رسانه خارجی فیزیکی توسط کاربر غیرفعال است یا خیر.

modifyAccountsDisabled

boolean

اینکه آیا افزودن یا حذف حساب‌ها غیرفعال است یا خیر.

safeBootDisabled
(deprecated)

boolean

اینکه آیا راه‌اندازی مجدد دستگاه به حالت بوت ایمن غیرفعال است یا خیر.

uninstallAppsDisabled

boolean

آیا حذف نصب برنامه‌ها توسط کاربر غیرفعال است؟ این گزینه از حذف نصب برنامه‌ها، حتی برنامه‌هایی که با استفاده از applications حذف می‌شوند، جلوگیری می‌کند.

statusBarDisabled
(deprecated)

boolean

اینکه آیا نوار وضعیت غیرفعال است یا خیر. این گزینه اعلان‌ها، تنظیمات سریع و سایر پوشش‌های صفحه را که امکان خروج از حالت تمام صفحه را فراهم می‌کنند، غیرفعال می‌کند. منسوخ شده. برای غیرفعال کردن نوار وضعیت در دستگاه کیوسک، از InstallType KIOSK یا kioskCustomLauncherEnabled استفاده کنید.

keyguardDisabled

boolean

اگر درست باشد، این گزینه قفل صفحه را برای نمایشگرهای اصلی و/یا ثانویه غیرفعال می‌کند. این خط‌مشی فقط در حالت مدیریت دستگاه اختصاصی پشتیبانی می‌شود.

minimumApiLevel

integer

حداقل سطح API مجاز اندروید.

statusReportingSettings

object ( StatusReportingSettings )

تنظیمات گزارش وضعیت

bluetoothContactSharingDisabled

boolean

اینکه آیا اشتراک‌گذاری مخاطب از طریق بلوتوث غیرفعال است یا خیر.

shortSupportMessage

object ( UserFacingMessage )

پیامی که در صفحه تنظیمات به کاربر نمایش داده می‌شود، هر جا که قابلیتی توسط مدیر غیرفعال شده باشد. اگر پیام بیش از ۲۰۰ کاراکتر باشد، ممکن است کوتاه شود.

longSupportMessage

object ( UserFacingMessage )

پیامی که در صفحه تنظیمات مدیر دستگاه به کاربر نمایش داده می‌شود.

passwordRequirements
(deprecated)

object ( PasswordRequirements )

الزامات رمز عبور. فیلد password_requirements.require_password_unlock نباید تنظیم شود. منسوخ شده - passwordPolicies استفاده کنید.

توجه:

مقادیر مبتنی بر پیچیدگی PasswordQuality ، یعنی COMPLEXITY_LOW ، COMPLEXITY_MEDIUM و COMPLEXITY_HIGH ، در اینجا قابل استفاده نیستند. unified_lock_settings نیز نمی‌توان در اینجا استفاده کرد.

wifiConfigsLockdownEnabled
(deprecated)

boolean

این منسوخ شده است.

bluetoothConfigDisabled

boolean

اینکه آیا پیکربندی بلوتوث غیرفعال است یا خیر.

cellBroadcastsConfigDisabled

boolean

اینکه آیا پیکربندی پخش سلولی غیرفعال است یا خیر.

credentialsConfigDisabled

boolean

اینکه آیا پیکربندی اعتبارنامه‌های کاربر غیرفعال است یا خیر.

mobileNetworksConfigDisabled

boolean

اینکه آیا پیکربندی شبکه‌های تلفن همراه غیرفعال است یا خیر.

tetheringConfigDisabled
(deprecated)

boolean

آیا پیکربندی اتصال به اینترنت و هات‌اسپات‌های قابل حمل غیرفعال است یا خیر. اگر tetheringSettings روی هر چیزی غیر از TETHERING_SETTINGS_UNSPECIFIED تنظیم شده باشد، این تنظیم نادیده گرفته می‌شود.

vpnConfigDisabled

boolean

اینکه آیا پیکربندی VPN غیرفعال است یا خیر.

wifiConfigDisabled
(deprecated)

boolean

اینکه آیا پیکربندی شبکه‌های Wi-Fi غیرفعال است یا خیر. در دستگاه‌های کاملاً مدیریت‌شده و پروفایل‌های کاری در دستگاه‌های متعلق به شرکت پشتیبانی می‌شود. برای دستگاه‌های کاملاً مدیریت‌شده، تنظیم این گزینه روی true، تمام شبکه‌های پیکربندی‌شده را حذف کرده و فقط شبکه‌های پیکربندی‌شده با استفاده از openNetworkConfiguration را حفظ می‌کند. برای پروفایل‌های کاری در دستگاه‌های متعلق به شرکت، شبکه‌های پیکربندی‌شده موجود تحت تأثیر قرار نمی‌گیرند و کاربر مجاز به اضافه کردن، حذف یا تغییر شبکه‌های Wi-Fi نیست. اگر configureWifi روی هر چیزی غیر از CONFIGURE_WIFI_UNSPECIFIED تنظیم شده باشد، این تنظیم نادیده گرفته می‌شود. توجه: اگر اتصال شبکه در زمان بوت امکان‌پذیر نباشد و پیکربندی Wi-Fi غیرفعال باشد، دریچه فرار شبکه برای به‌روزرسانی خط‌مشی دستگاه نمایش داده می‌شود (به networkEscapeHatchEnabled مراجعه کنید).

createWindowsDisabled

boolean

اینکه آیا ایجاد پنجره‌ها علاوه بر پنجره‌های برنامه غیرفعال است یا خیر.

networkResetDisabled

boolean

اینکه آیا بازنشانی تنظیمات شبکه غیرفعال است یا خیر.

outgoingBeamDisabled

boolean

اینکه آیا استفاده از NFC برای ارسال داده از برنامه‌ها غیرفعال است یا خیر.

outgoingCallsDisabled

boolean

اینکه آیا تماس‌های خروجی غیرفعال هستند یا خیر.

removeUserDisabled

boolean

اینکه آیا حذف سایر کاربران غیرفعال است یا خیر.

shareLocationDisabled

boolean

اینکه آیا اشتراک‌گذاری موقعیت مکانی غیرفعال است یا خیر.

smsDisabled

boolean

آیا ارسال و دریافت پیامک غیرفعال است یا خیر.

unmuteMicrophoneDisabled
(deprecated)

boolean

اگر microphone_access روی هر مقداری غیر از MICROPHONE_ACCESS_UNSPECIFIED تنظیم شده باشد، این هیچ تاثیری ندارد. در غیر این صورت، این فیلد غیرفعال بودن میکروفون‌ها را کنترل می‌کند: اگر درست باشد، همه میکروفون‌ها غیرفعال می‌شوند، در غیر این صورت در دسترس هستند. این فقط در دستگاه‌های کاملاً مدیریت‌شده در دسترس است.

usbFileTransferDisabled
(deprecated)

boolean

آیا انتقال فایل‌ها از طریق USB غیرفعال است؟ این قابلیت فقط در دستگاه‌های متعلق به شرکت پشتیبانی می‌شود.

ensureVerifyAppsEnabled
(deprecated)

boolean

اینکه آیا تأیید برنامه به صورت اجباری فعال است یا خیر.

permittedInputMethods

object ( PackageNameList )

در صورت وجود، فقط روش‌های ورودی ارائه شده توسط بسته‌های موجود در این لیست مجاز هستند. اگر این فیلد وجود داشته باشد، اما لیست خالی باشد، فقط روش‌های ورودی سیستم مجاز هستند.

stayOnPluggedModes[]

enum ( BatteryPluggedMode )

حالت‌هایی که دستگاه در حالت اتصال باتری روشن می‌ماند. هنگام استفاده از این تنظیم، توصیه می‌شود که maximum_time_to_lock پاک کنید تا دستگاه هنگام روشن ماندن، خودش قفل نشود.

recommendedGlobalProxy

object ( ProxyInfo )

پروکسی HTTP سراسری مستقل از شبکه. معمولاً پروکسی‌ها باید برای هر شبکه در open_network_configuration پیکربندی شوند. با این حال، برای پیکربندی‌های غیرمعمول مانند فیلتر داخلی عمومی، یک پروکسی HTTP سراسری ممکن است مفید باشد. اگر پروکسی در دسترس نباشد، ممکن است دسترسی به شبکه قطع شود. پروکسی سراسری فقط یک توصیه است و برخی از برنامه‌ها ممکن است آن را نادیده بگیرند.

setUserIconDisabled

boolean

اینکه آیا تغییر آیکون کاربر غیرفعال است یا خیر. این مورد فقط در دستگاه‌هایی که اندروید ۷ و بالاتر دارند اعمال می‌شود.

setWallpaperDisabled

boolean

اینکه آیا تغییر تصویر زمینه غیرفعال است یا خیر.

choosePrivateKeyRules[]

object ( ChoosePrivateKeyRule )

قوانینی برای تعیین دسترسی برنامه‌ها به کلیدهای خصوصی. برای جزئیات بیشتر به ChoosePrivateKeyRule مراجعه کنید. اگر برنامه‌ای دارای دامنه‌ی واگذاری CERT_SELECTION باشد، این باید خالی باشد.

alwaysOnVpnPackage

object ( AlwaysOnVpnPackage )

پیکربندی برای اتصال VPN همیشه روشن. برای جلوگیری از تغییر این تنظیم، از آن به همراه vpn_config_disabled استفاده کنید.

frpAdminEmails[]

string

آدرس‌های ایمیل مدیران دستگاه برای محافظت در برابر بازنشانی کارخانه. هنگامی که دستگاه بازنشانی کارخانه می‌شود، برای باز کردن قفل دستگاه، به یکی از این مدیران نیاز است تا با ایمیل و رمز عبور حساب گوگل خود وارد سیستم شود. اگر هیچ مدیری مشخص نشده باشد، دستگاه محافظت در برابر بازنشانی کارخانه را ارائه نمی‌دهد.

deviceOwnerLockScreenInfo

object ( UserFacingMessage )

اطلاعات مالک دستگاه که قرار است روی صفحه قفل نمایش داده شود.

dataRoamingDisabled

boolean

آیا سرویس‌های داده رومینگ غیرفعال هستند یا خیر.

locationMode

enum ( LocationMode )

میزان تشخیص موقعیت مکانی فعال شده.

networkEscapeHatchEnabled

boolean

آیا دریچه فرار شبکه فعال است یا خیر. اگر اتصال شبکه در زمان بوت برقرار نشود، دریچه فرار از کاربر می‌خواهد که به طور موقت به یک شبکه متصل شود تا سیاست دستگاه به‌روزرسانی شود. پس از اعمال سیاست، شبکه موقت فراموش می‌شود و دستگاه به بوت شدن ادامه می‌دهد. این امر مانع از عدم امکان اتصال به شبکه در صورت عدم وجود شبکه مناسب در آخرین سیاست و بوت شدن دستگاه به یک برنامه در حالت قفل وظیفه یا عدم دسترسی کاربر به تنظیمات دستگاه می‌شود.

توجه: تنظیم wifiConfigDisabled روی true، این تنظیم را تحت شرایط خاص لغو می‌کند. برای جزئیات بیشتر لطفاً به wifiConfigDisabled مراجعه کنید. تنظیم configureWifi روی DISALLOW_CONFIGURING_WIFI این تنظیم را تحت شرایط خاص لغو می‌کند. لطفاً برای جزئیات بیشتر به DISALLOW_CONFIGURING_WIFI مراجعه کنید.

bluetoothDisabled

boolean

آیا بلوتوث غیرفعال است یا خیر. این تنظیم را به bluetooth_config_disabled ترجیح دهید زیرا bluetooth_config_disabled می‌تواند توسط کاربر نادیده گرفته شود.

complianceRules[]
(deprecated)

object ( ComplianceRule )

قوانینی که اعلام می‌کنند در صورت عدم تطابق دستگاه با خط‌مشی‌اش، کدام اقدامات کاهش‌دهنده باید انجام شوند. هنگامی که شرایط برای چندین قانون برآورده شود، تمام اقدامات کاهش‌دهنده برای قوانین انجام می‌شود. حداکثر ۱۰۰ قانون وجود دارد. به جای آن از قوانین اجرای خط‌مشی استفاده کنید.

blockApplicationsEnabled
(deprecated)

boolean

اینکه آیا برنامه‌هایی غیر از برنامه‌های پیکربندی‌شده در applications از نصب مسدود شده‌اند یا خیر. وقتی این گزینه تنظیم شود، برنامه‌هایی که تحت یک خط‌مشی قبلی نصب شده‌اند اما دیگر در خط‌مشی ظاهر نمی‌شوند، به‌طور خودکار حذف نصب می‌شوند.

installUnknownSourcesAllowed
(deprecated)

boolean

این میدان هیچ تاثیری ندارد.

debuggingFeaturesAllowed
(deprecated)

boolean

اینکه آیا کاربر مجاز به فعال کردن ویژگی‌های اشکال‌زدایی است یا خیر.

funDisabled

boolean

اینکه آیا کاربر مجاز به تفریح ​​است یا خیر. کنترل می‌کند که آیا بازی تخم‌مرغ عید پاک در تنظیمات غیرفعال است یا خیر.

autoTimeRequired
(deprecated)

boolean

آیا زمان خودکار مورد نیاز است، که مانع از تنظیم دستی تاریخ و زمان توسط کاربر می‌شود. اگر autoDateAndTimeZone تنظیم شده باشد، این فیلد نادیده گرفته می‌شود.

permittedAccessibilityServices

object ( PackageNameList )

سرویس‌های دسترسی مجاز را مشخص می‌کند. اگر فیلد تنظیم نشده باشد، می‌توان از هر سرویس دسترسی استفاده کرد. اگر فیلد تنظیم شده باشد، فقط سرویس‌های دسترسی موجود در این لیست و سرویس دسترسی داخلی سیستم قابل استفاده هستند. به طور خاص، اگر فیلد روی خالی تنظیم شده باشد، فقط سرویس‌های دسترسی داخلی سیستم قابل استفاده هستند. این قابلیت را می‌توان روی دستگاه‌های کاملاً مدیریت‌شده و روی پروفایل‌های کاری تنظیم کرد. وقتی روی یک پروفایل کاری اعمال شود، هم روی پروفایل شخصی و هم روی پروفایل کاری تأثیر می‌گذارد.

appAutoUpdatePolicy

enum ( AppAutoUpdatePolicy )

جایگزین پیشنهادی: autoUpdateMode که برای هر برنامه تنظیم می‌شود، انعطاف‌پذیری بیشتری در مورد فرکانس به‌روزرسانی ارائه می‌دهد.

وقتی autoUpdateMode روی AUTO_UPDATE_POSTPONED یا AUTO_UPDATE_HIGH_PRIORITY تنظیم شده باشد، این فیلد هیچ تاثیری ندارد.

سیاست به‌روزرسانی خودکار برنامه، که زمان اعمال به‌روزرسانی‌های خودکار برنامه را کنترل می‌کند.

kioskCustomLauncherEnabled

boolean

فعال بودن یا نبودن لانچر سفارشی کیوسک. این گزینه صفحه اصلی را با لانچری جایگزین می‌کند که دستگاه را به برنامه‌های نصب شده از طریق تنظیمات applications قفل می‌کند. برنامه‌ها در یک صفحه و به ترتیب حروف الفبا نمایش داده می‌شوند. برای پیکربندی بیشتر رفتار دستگاه کیوسک، از kioskCustomization استفاده کنید.

androidDevicePolicyTracks[]
(deprecated)

enum ( AppTrack )

این تنظیم پشتیبانی نمی‌شود. هر مقداری نادیده گرفته می‌شود.

skipFirstUseHintsEnabled

boolean

برای رد کردن نکات در اولین استفاده، علامت بزنید. مدیر سازمان می‌تواند سیستم توصیه را برای برنامه‌ها فعال کند تا آموزش کاربری و سایر نکات مقدماتی خود را در اولین راه‌اندازی رد کنند.

privateKeySelectionEnabled

boolean

در صورت عدم وجود قوانین منطبق در ChoosePrivateKeyRules، امکان نمایش رابط کاربری روی دستگاه برای کاربر جهت انتخاب نام مستعار کلید خصوصی را فراهم می‌کند. برای دستگاه‌های پایین‌تر از اندروید P، تنظیم این مقدار ممکن است کلیدهای سازمانی را آسیب‌پذیر کند. اگر برنامه‌ای دارای دامنه تفویض اختیار CERT_SELECTION باشد، این مقدار هیچ تاثیری نخواهد داشت.

encryptionPolicy

enum ( EncryptionPolicy )

آیا رمزگذاری فعال است؟

usbMassStorageEnabled
(deprecated)

boolean

اینکه آیا حافظه USB فعال است یا خیر. منسوخ شده.

permissionGrants[]

object ( PermissionGrant )

مجوز صریح یا اعطای مجوز گروهی یا رد مجوز برای همه برنامه‌ها. این مقادیر، default_permission_policy لغو می‌کنند.

playStoreMode

enum ( PlayStoreMode )

این حالت، برنامه‌هایی را که در فروشگاه Play برای کاربر در دسترس هستند و همچنین رفتار دستگاه را هنگام حذف برنامه‌ها از این خط‌مشی کنترل می‌کند.

setupActions[]

object ( SetupAction )

اقدامی که باید در طول فرآیند راه‌اندازی انجام شود. حداکثر یک اقدام می‌تواند مشخص شود.

passwordPolicies[]

object ( PasswordRequirements )

سیاست‌های الزام رمز عبور. با تنظیم فیلد password_scope در سیاست، می‌توان سیاست‌های مختلفی را برای پروفایل کاری یا دستگاه‌های کاملاً مدیریت‌شده تنظیم کرد.

policyEnforcementRules[]

object ( PolicyEnforcementRule )

قوانینی که رفتار را در زمانی که یک سیاست خاص نمی‌تواند روی دستگاه اعمال شود، تعریف می‌کنند.

kioskCustomization

object ( KioskCustomization )

تنظیماتی که رفتار دستگاه را در حالت کیوسک کنترل می‌کنند. برای فعال کردن حالت کیوسک، kioskCustomLauncherEnabled را روی true تنظیم کنید یا یک برنامه را در خط‌مشی با installType KIOSK مشخص کنید.

advancedSecurityOverrides

object ( AdvancedSecurityOverrides )

تنظیمات امنیتی پیشرفته. در بیشتر موارد، تنظیم این موارد ضروری نیست.

personalUsagePolicies

object ( PersonalUsagePolicies )

سیاست‌های مدیریت استفاده شخصی از دستگاه متعلق به شرکت.

autoDateAndTimeZone

enum ( AutoDateAndTimeZone )

آیا تاریخ، زمان و منطقه زمانی خودکار در دستگاه متعلق به شرکت فعال است یا خیر. اگر این تنظیم شده باشد، autoTimeRequired نادیده گرفته می‌شود.

oncCertificateProviders[]

object ( OncCertificateProvider )

این قابلیت به صورت عمومی در دسترس نیست.

crossProfilePolicies

object ( CrossProfilePolicies )

سیاست‌های چند پروفایلی روی دستگاه اعمال می‌شوند.

preferentialNetworkService

enum ( PreferentialNetworkService )

کنترل می‌کند که آیا سرویس شبکه ترجیحی در نمایه کاری یا در دستگاه‌های کاملاً مدیریت‌شده فعال باشد. به عنوان مثال، یک سازمان ممکن است با یک اپراتور مخابراتی توافق داشته باشد که تمام داده‌های کاری از دستگاه‌های کارمندانش از طریق یک سرویس شبکه اختصاصی برای استفاده سازمانی ارسال شود. نمونه‌ای از یک سرویس شبکه ترجیحی پشتیبانی‌شده، بخش سازمانی در شبکه‌های 5G است. اگر preferentialNetworkServiceSettings یا ApplicationPolicy.preferentialNetworkId در دستگاه‌هایی که اندروید 13 یا بالاتر دارند تنظیم شده باشد، این خط‌مشی هیچ تاثیری ندارد.

usageLog

object ( UsageLog )

پیکربندی ثبت فعالیت‌های دستگاه.

cameraAccess

enum ( CameraAccess )

استفاده از دوربین و اینکه آیا کاربر به دکمه‌ی دسترسی به دوربین دسترسی دارد یا خیر را کنترل می‌کند.

microphoneAccess

enum ( MicrophoneAccess )

استفاده از میکروفون و اینکه آیا کاربر به دکمه‌ی دسترسی میکروفون دسترسی دارد یا خیر را کنترل می‌کند. این مورد فقط در دستگاه‌های کاملاً مدیریت‌شده اعمال می‌شود.

deviceConnectivityManagement

object ( DeviceConnectivityManagement )

کنترل‌های اتصال دستگاه مانند Wi-Fi، دسترسی به داده USB، اتصالات صفحه کلید/ماوس و موارد دیگر را پوشش می‌دهد.

deviceRadioState

object ( DeviceRadioState )

کنترل‌های مربوط به وضعیت رادیو مانند وای‌فای، بلوتوث و موارد دیگر را پوشش می‌دهد.

credentialProviderPolicyDefault

enum ( CredentialProviderPolicyDefault )

کنترل می‌کند که کدام برنامه‌ها مجاز به عمل به عنوان ارائه‌دهنده اعتبارنامه در اندروید ۱۴ و بالاتر هستند. این برنامه‌ها اعتبارنامه‌ها را ذخیره می‌کنند، برای جزئیات بیشتر به این و این مراجعه کنید. همچنین credentialProviderPolicy مراجعه کنید.

printingPolicy

enum ( PrintingPolicy )

اختیاری. کنترل می‌کند که آیا چاپ مجاز است یا خیر. این قابلیت در دستگاه‌هایی که اندروید ۹ و بالاتر دارند پشتیبانی می‌شود.

displaySettings

object ( DisplaySettings )

اختیاری. کنترل‌هایی برای تنظیمات نمایشگر.

assistContentPolicy

enum ( AssistContentPolicy )

اختیاری. کنترل می‌کند که آیا AssistContent اجازه ارسال به یک برنامه‌ی دارای امتیاز مانند یک برنامه‌ی دستیار را دارد یا خیر. AssistContent شامل اسکرین‌شات‌ها و اطلاعات مربوط به یک برنامه، مانند نام بسته، می‌شود. این قابلیت در اندروید ۱۵ و بالاتر پشتیبانی می‌شود.

workAccountSetupConfig

object ( WorkAccountSetupConfig )

اختیاری. پیکربندی تنظیمات حساب کاری، مانند جزئیات مربوط به نیاز به حساب تأیید شده گوگل، را کنترل می‌کند.

wipeDataFlags[]

enum ( WipeDataFlag )

اختیاری. پرچم‌های پاک کردن برای نشان دادن اینکه چه داده‌هایی هنگام پاک کردن یک دستگاه یا پروفایل به هر دلیلی (مثلاً عدم انطباق) پاک می‌شوند. این مورد در مورد متد enterprises.devices.delete صدق نمی‌کند. این لیست نباید تکراری باشد.

enterpriseDisplayNameVisibility

enum ( EnterpriseDisplayNameVisibility )

اختیاری. کنترل می‌کند که آیا enterpriseDisplayName در دستگاه قابل مشاهده باشد یا خیر (مثلاً پیام قفل صفحه در دستگاه‌های متعلق به شرکت).

appFunctions

enum ( AppFunctions )

اختیاری. کنترل می‌کند که آیا برنامه‌های روی دستگاه برای دستگاه‌های کاملاً مدیریت‌شده یا در نمایه کاری برای دستگاه‌های دارای نمایه‌های کاری، مجاز به نمایش عملکردهای برنامه هستند یا خیر.

defaultApplicationSettings[]

object ( DefaultApplicationSetting )

اختیاری. تنظیم پیش‌فرض برنامه برای انواع پشتیبانی‌شده. اگر برنامه پیش‌فرض حداقل برای یک نوع برنامه در یک پروفایل با موفقیت تنظیم شود، کاربران از تغییر هیچ برنامه پیش‌فرض در آن پروفایل منع می‌شوند.

فقط یک DefaultApplicationSetting برای هر DefaultApplicationType مجاز است.

برای جزئیات بیشتر به راهنمای تنظیمات پیش‌فرض برنامه مراجعه کنید.

سیاست برنامه

نمایش JSON
{
  "packageName": string,
  "installType": enum (InstallType),
  "lockTaskAllowed": boolean,
  "defaultPermissionPolicy": enum (PermissionPolicy),
  "permissionGrants": [
    {
      object (PermissionGrant)
    }
  ],
  "managedConfiguration": {
    object
  },
  "disabled": boolean,
  "minimumVersionCode": integer,
  "delegatedScopes": [
    enum (DelegatedScope)
  ],
  "managedConfigurationTemplate": {
    object (ManagedConfigurationTemplate)
  },
  "accessibleTrackIds": [
    string
  ],
  "connectedWorkAndPersonalApp": enum (ConnectedWorkAndPersonalApp),
  "autoUpdateMode": enum (AutoUpdateMode),
  "extensionConfig": {
    object (ExtensionConfig)
  },
  "alwaysOnVpnLockdownExemption": enum (AlwaysOnVpnLockdownExemption),
  "workProfileWidgets": enum (WorkProfileWidgets),
  "credentialProviderPolicy": enum (CredentialProviderPolicy),
  "customAppConfig": {
    object (CustomAppConfig)
  },
  "installConstraint": [
    {
      object (InstallConstraint)
    }
  ],
  "installPriority": integer,
  "userControlSettings": enum (UserControlSettings),
  "preferentialNetworkId": enum (PreferentialNetworkId),
  "signingKeyCerts": [
    {
      object (ApplicationSigningKeyCert)
    }
  ],
  "roles": [
    {
      object (Role)
    }
  ]
}
فیلدها
packageName

string

نام بسته برنامه. به عنوان مثال، com.google.android.youtube برای برنامه YouTube.

installType

enum ( InstallType )

نوع نصبی که باید انجام شود.

lockTaskAllowed
(deprecated)

boolean

اینکه آیا برنامه اجازه دارد در حالت تمام صفحه خود را قفل کند یا خیر. منسوخ شده. برای پیکربندی یک دستگاه اختصاصی از InstallType KIOSK یا kioskCustomLauncherEnabled استفاده کنید.

defaultPermissionPolicy

enum ( PermissionPolicy )

سیاست پیش‌فرض برای همه مجوزهای درخواستی برنامه. در صورت مشخص شدن، این سیاست، سیاست default_permission_policy را که برای همه برنامه‌ها اعمال می‌شود، لغو می‌کند. این سیاست، سیاست permission_grants را که برای همه برنامه‌ها اعمال می‌شود، لغو نمی‌کند.

permissionGrants[]

object ( PermissionGrant )

اعطای یا رد صریح مجوز برای برنامه. این مقادیر، قوانین default_permission_policy و permission_grants را که برای همه برنامه‌ها اعمال می‌شود، لغو می‌کنند.

managedConfiguration

object ( Struct format)

پیکربندی مدیریت‌شده (ManagedProperty) اعمال‌شده بر برنامه. قالب پیکربندی توسط مقادیر ManagedProperty پشتیبانی‌شده توسط برنامه تعیین می‌شود. نام هر فیلد در پیکربندی مدیریت‌شده باید با فیلد key ManagedProperty مطابقت داشته باشد. مقدار فیلد باید با type ManagedProperty سازگار باشد:

نوع مقدار JSON
BOOL true یا false
STRING رشته
INTEGER شماره
CHOICE رشته
MULTISELECT آرایه‌ای از رشته‌ها
HIDDEN رشته
BUNDLE_ARRAY آرایه‌ای از اشیاء
نکته: مقادیر رشته‌ای نمی‌توانند بیش از ۶۵۵۳۵ کاراکتر باشند.

disabled

boolean

آیا برنامه غیرفعال است یا خیر. در صورت غیرفعال بودن، داده‌های برنامه همچنان حفظ می‌شوند.

minimumVersionCode

integer

حداقل نسخه برنامه‌ای که روی دستگاه اجرا می‌شود. در صورت تنظیم، دستگاه تلاش می‌کند برنامه را حداقل به این کد نسخه به‌روزرسانی کند. اگر برنامه به‌روز نباشد، دستگاه حاوی یک NonComplianceDetail با non_compliance_reason تنظیم شده روی APP_NOT_UPDATED خواهد بود. برنامه باید از قبل با کد نسخه‌ای بزرگتر یا مساوی این مقدار در Google Play منتشر شده باشد. حداکثر 20 برنامه می‌توانند برای هر خط‌مشی، حداقل کد نسخه را مشخص کنند.

delegatedScopes[]

enum ( DelegatedScope )

حوزه‌هایی که از طریق خط‌مشی دستگاه اندروید به برنامه واگذار شده‌اند. این حوزه‌ها امتیازات اضافی را برای برنامه‌هایی که به آنها اعمال می‌شوند، فراهم می‌کنند.

managedConfigurationTemplate

object ( ManagedConfigurationTemplate )

الگوی پیکربندی‌های مدیریت‌شده برای برنامه، که از iframe پیکربندی‌های مدیریت‌شده ذخیره شده است. در صورت تنظیم managed_configuration، این فیلد نادیده گرفته می‌شود.

accessibleTrackIds[]

string

فهرست شناسه‌های مسیر برنامه که یک دستگاه متعلق به شرکت می‌تواند به آنها دسترسی داشته باشد. اگر این فهرست شامل چندین شناسه مسیر باشد، دستگاه‌ها آخرین نسخه را از بین تمام مسیرهای قابل دسترسی دریافت می‌کنند. اگر این فهرست حاوی هیچ شناسه مسیر نباشد، دستگاه‌ها فقط به مسیر تولید برنامه دسترسی دارند. جزئیات بیشتر در مورد هر مسیر در AppTrackInfo موجود است.

connectedWorkAndPersonalApp

enum ( ConnectedWorkAndPersonalApp )

کنترل می‌کند که آیا برنامه می‌تواند با خودش در پروفایل‌های کاری و شخصی دستگاه ارتباط برقرار کند یا خیر، البته منوط به رضایت کاربر.

autoUpdateMode

enum ( AutoUpdateMode )

حالت به‌روزرسانی خودکار برنامه را کنترل می‌کند.

extensionConfig
(deprecated)

object ( ExtensionConfig )

پیکربندی برای فعال کردن این برنامه به عنوان یک برنامه افزودنی، با قابلیت تعامل با خط‌مشی دستگاه اندروید به صورت آفلاین.

این فیلد حداکثر برای یک برنامه قابل تنظیم است. اگر برنامه‌ای با نقش COMPANION_APP وجود داشته باشد، این فیلد قابل تنظیم نیست.

اثر انگشت گواهی کلید امضای برنامه روی دستگاه باید با یکی از ورودی‌های ApplicationPolicy.signingKeyCerts یا ExtensionConfig.signingKeyFingerprintsSha256 (منسوخ شده) یا اثر انگشت‌های گواهی کلید امضای به‌دست‌آمده از Play Store مطابقت داشته باشد تا برنامه بتواند با Android Device Policy ارتباط برقرار کند. اگر برنامه در Play Store نباشد و ApplicationPolicy.signingKeyCerts و ExtensionConfig.signingKeyFingerprintsSha256 (منسوخ شده) تنظیم نشده باشند، خطای NonComplianceDetail با INVALID_VALUE گزارش می‌شود.

alwaysOnVpnLockdownExemption

enum ( AlwaysOnVpnLockdownExemption )

مشخص می‌کند که آیا برنامه در صورت عدم اتصال VPN مجاز به شبکه‌سازی است یا خیر و alwaysOnVpnPackage.lockdownEnabled فعال است. اگر روی VPN_LOCKDOWN_ENFORCED تنظیم شود، برنامه مجاز به شبکه‌سازی نیست و اگر روی VPN_LOCKDOWN_EXEMPTION تنظیم شود، برنامه مجاز به شبکه‌سازی است. فقط در دستگاه‌هایی که اندروید ۱۰ و بالاتر را اجرا می‌کنند پشتیبانی می‌شود. اگر این توسط دستگاه پشتیبانی نشود، دستگاه حاوی یک NonComplianceDetail با non_compliance_reason تنظیم شده روی API_LEVEL و یک fieldPath خواهد بود. اگر این برای برنامه قابل اجرا نباشد، دستگاه حاوی یک NonComplianceDetail با non_compliance_reason تنظیم شده روی UNSUPPORTED و یک fieldPath خواهد بود. fieldPath روی applications[i].alwaysOnVpnLockdownExemption تنظیم شده است، که در آن i اندیس بسته در سیاست applications است.

workProfileWidgets

enum ( WorkProfileWidgets )

مشخص می‌کند که آیا برنامه نصب شده در نمایه کاری مجاز به اضافه کردن ابزارک به صفحه اصلی است یا خیر.

credentialProviderPolicy

enum ( CredentialProviderPolicy )

اختیاری. اینکه آیا برنامه مجاز است به عنوان ارائه دهنده اعتبارنامه در اندروید ۱۴ و بالاتر عمل کند یا خیر.

customAppConfig

object ( CustomAppConfig )

اختیاری. پیکربندی برای این برنامه سفارشی.

برای تنظیم این مورد، باید install_type روی CUSTOM تنظیم شود.

installConstraint[]

object ( InstallConstraint )

اختیاری. محدودیت‌های نصب برنامه. شما می‌توانید حداکثر یک InstallConstraint تعیین کنید. چندین محدودیت رد می‌شوند.

installPriority

integer

اختیاری. در میان برنامه‌هایی که installType روی: تنظیم شده است

  • FORCE_INSTALLED
  • PREINSTALLED

این اولویت نسبی نصب را کنترل می‌کند. مقدار ۰ (پیش‌فرض) به این معنی است که این برنامه هیچ اولویتی نسبت به سایر برنامه‌ها ندارد. برای مقادیر بین ۱ تا ۱۰۰۰۰، مقدار کمتر به معنای اولویت بالاتر است. مقادیر خارج از محدوده ۰ تا ۱۰۰۰۰ رد می‌شوند.

userControlSettings

enum ( UserControlSettings )

اختیاری. مشخص می‌کند که آیا کنترل کاربر برای برنامه مجاز است یا خیر. کنترل کاربر شامل اقدامات کاربر مانند توقف اجباری و پاک کردن داده‌های برنامه می‌شود. انواع خاصی از برنامه‌ها دارای رفتار ویژه‌ای هستند، برای جزئیات بیشتر به USER_CONTROL_SETTINGS_UNSPECIFIED و USER_CONTROL_ALLOWED مراجعه کنید.

preferentialNetworkId

enum ( PreferentialNetworkId )

اختیاری. شناسه شبکه ترجیحی که برنامه از آن استفاده می‌کند. باید پیکربندی برای شناسه شبکه مشخص شده در preferentialNetworkServiceConfigs وجود داشته باشد. اگر روی PREFERENTIAL_NETWORK_ID_UNSPECIFIED تنظیم شود، برنامه از شناسه شبکه پیش‌فرض مشخص شده در defaultPreferentialNetworkId استفاده خواهد کرد. برای لیست برنامه‌هایی که از این پیش‌فرض‌سازی مستثنی هستند، به مستندات defaultPreferentialNetworkId مراجعه کنید. این مورد هم در پروفایل‌های کاری و هم در دستگاه‌های کاملاً مدیریت‌شده در اندروید ۱۳ و بالاتر اعمال می‌شود.

signingKeyCerts[]

object ( ApplicationSigningKeyCert )

اختیاری. امضای گواهی‌های کلیدی برنامه.

این فیلد در موارد زیر الزامی است:

  • installType برنامه روی CUSTOM تنظیم شده است (یعنی یک برنامه سفارشی).
  • roles برنامه روی یک لیست غیرخالی تنظیم شده‌اند و برنامه در فروشگاه Play وجود ندارد.
  • این برنامه دارای تنظیمات extensionConfig است (یعنی یک برنامه افزونه) اما ExtensionConfig.signingKeyFingerprintsSha256 (منسوخ شده) تنظیم نشده است و برنامه در فروشگاه Play وجود ندارد.

اگر این فیلد برای یک برنامه سفارشی تنظیم نشده باشد، خط‌مشی رد می‌شود. اگر در صورت نیاز برای یک برنامه غیرسفارشی تنظیم نشده باشد، NonComplianceDetail با INVALID_VALUE گزارش می‌شود.

برای موارد دیگر، این فیلد اختیاری است و از گواهی‌های کلید امضای دریافت شده از فروشگاه Play استفاده می‌شود.

برای مشاهده نحوه استفاده از این فیلد، تنظیمات خط‌مشی زیر را مشاهده کنید:

  • choosePrivateKeyRules
  • ApplicationPolicy.InstallType.CUSTOM
  • ApplicationPolicy.extensionConfig
  • ApplicationPolicy.roles
roles[]

object ( Role )

اختیاری. نقش‌هایی که برنامه دارد.

برنامه‌هایی که نقش‌های خاصی دارند را می‌توان از محدودیت‌های اجرا در پس‌زمینه و مصرف برق، تعلیق و خواب زمستانی در اندروید ۱۴ و بالاتر معاف کرد. همچنین می‌توان کنترل کاربر را برای برنامه‌هایی با نقش‌های خاص در اندروید ۱۱ و بالاتر غیرفعال کرد. برای جزئیات بیشتر به مستندات هر RoleType مراجعه کنید.

اگر برنامه دارای سرویس دریافت اعلان با <meta-data android:name="com.google.android.managementapi.notification.NotificationReceiverService.SERVICE_APP_ROLES" android:value="" /> در مورد نقش‌هایی که برای آن تنظیم شده است، مطلع می‌شود. هر زمان که نقش‌های آن به‌روزرسانی شوند یا پس از نصب برنامه، زمانی که لیست نقش‌ها خالی نباشد، برنامه مطلع می‌شود. برنامه می‌تواند پس از نصب از این اعلان برای راه‌اندازی مجدد خود استفاده کند. برای جزئیات بیشتر در مورد الزامات سرویس، به راهنماهای Integrate with the AMAPI SDK و Manage app roles مراجعه کنید.

برای اعمال معافیت‌ها و اطلاع‌رسانی به برنامه در مورد نقش‌ها، اثر انگشت گواهی کلید امضای برنامه روی دستگاه باید با یکی از اثر انگشت‌های گواهی کلید امضای به‌دست‌آمده از فروشگاه Play یا یکی از ورودی‌های ApplicationPolicy.signingKeyCerts مطابقت داشته باشد. در غیر این صورت، NonComplianceDetail با APP_SIGNING_CERT_MISMATCH گزارش می‌شود.

نباید نقش‌های تکراری با roleType یکسان وجود داشته باشند. چندین برنامه نمی‌توانند نقشی با roleType یکسان داشته باشند. نقشی با نوع ROLE_TYPE_UNSPECIFIED مجاز نیست.

مجوز

نمایش JSON
{
  "permission": string,
  "policy": enum (PermissionPolicy)
}
فیلدها
permission

string

مجوز یا گروه اندروید، مثلاً android.permission.READ_CALENDAR یا android.permission_group.CALENDAR .

policy

enum ( PermissionPolicy )

سیاست اعطای مجوز.

ساختار

نمایش JSON
{
  "fields": {
    string: value,
    ...
  }
}
فیلدها
fields

map (key: string, value: value ( Value format))

نقشه نامرتب از مقادیر با نوع پویا.

یک شیء شامل لیستی از جفت‌های "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

فیلدهاورود

نمایش JSON
{
  "key": string,
  "value": value
}
فیلدها
key

string

value

value ( Value format)

ارزش

نمایش JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
فیلدها
فیلد Union kind . نوع مقدار. kind فقط می‌تواند یکی از موارد زیر باشد:
nullValue

null

نشان دهنده مقدار تهی (null) است.

numberValue

number

نشان دهنده یک مقدار مضاعف است.

stringValue

string

نشان دهنده یک مقدار رشته ای است.

boolValue

boolean

نشان دهنده یک مقدار بولی است.

structValue

object ( Struct format)

نشان دهنده یک مقدار ساختار یافته است.

listValue

array ( ListValue format)

نشان دهنده یک Value تکراری است.

مقدار لیست

نمایش JSON
{
  "values": [
    value
  ]
}
فیلدها
values[]

value ( Value format)

فیلد تکراری با مقادیر تایپ‌شده‌ی پویا.

الگوی پیکربندی مدیریت‌شده

نمایش JSON
{
  "templateId": string,
  "configurationVariables": {
    string: string,
    ...
  }
}
فیلدها
templateId

string

شناسه‌ی الگوی پیکربندی‌های مدیریت‌شده.

configurationVariables

map (key: string, value: string)

اختیاری، یک نقشه حاوی متغیرهای پیکربندی <key, value> که برای پیکربندی تعریف شده‌اند.

یک شیء شامل لیستی از جفت‌های "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

متغیرهای پیکربندیورودی

نمایش JSON
{
  "key": string,
  "value": string
}
فیلدها
key

string

value

string

پیکربندی افزونه

نمایش JSON
{
  "signingKeyFingerprintsSha256": [
    string
  ],
  "notificationReceiver": string
}
فیلدها
signingKeyFingerprintsSha256[]
(deprecated)

string

هش‌های SHA-256 رمزگذاری شده با هگزادسیمال از گواهی‌های کلید امضای برنامه افزونه. فقط نمایش رشته‌های هگزادسیمال ۶۴ کاراکتری معتبر است.

اثر انگشت‌های گواهی کلید امضا همیشه از فروشگاه Play دریافت می‌شوند و این فیلد برای ارائه اثر انگشت‌های گواهی کلید امضای اضافی استفاده می‌شود. با این حال، اگر برنامه در فروشگاه Play موجود نباشد، باید این فیلد تنظیم شود. اگر این فیلد تنظیم نشود، زمانی که برنامه در فروشگاه Play موجود نباشد، یک NonComplianceDetail با INVALID_VALUE گزارش می‌شود.

اثر انگشت گواهی کلید امضای برنامه افزونه روی دستگاه باید با یکی از اثر انگشت‌های گواهی کلید امضای دریافت شده از فروشگاه Play یا موارد ارائه شده در این فیلد مطابقت داشته باشد تا برنامه بتواند با خط‌مشی دستگاه Android ارتباط برقرار کند.

در موارد استفاده در محیط عملیاتی، توصیه می‌شود این قسمت را خالی بگذارید.

notificationReceiver
(deprecated)

string

نام کلاس کاملاً واجد شرایط کلاس سرویس گیرنده برای سیاست دستگاه اندروید (Android Device Policy) جهت اطلاع‌رسانی به برنامه افزونه از هرگونه به‌روزرسانی وضعیت دستور محلی. این سرویس باید در AndroidManifest.xml برنامه افزونه صادر شود و NotificationReceiverService گسترش دهد (برای جزئیات بیشتر به راهنمای ادغام با AMAPI SDK مراجعه کنید).

پیکربندی سفارشی برنامه

نمایش JSON
{
  "userUninstallSettings": enum (UserUninstallSettings)
}
فیلدها
userUninstallSettings

enum ( UserUninstallSettings )

اختیاری. تنظیمات حذف نصب برنامه سفارشی توسط کاربر.

محدودیت نصب

نمایش JSON
{
  "networkTypeConstraint": enum (NetworkTypeConstraint),
  "chargingConstraint": enum (ChargingConstraint),
  "deviceIdleConstraint": enum (DeviceIdleConstraint)
}
فیلدها
networkTypeConstraint

enum ( NetworkTypeConstraint )

اختیاری. محدودیت نوع شبکه.

chargingConstraint

enum ( ChargingConstraint )

اختیاری. محدودیت شارژ.

deviceIdleConstraint

enum ( DeviceIdleConstraint )

اختیاری. محدودیت زمان بیکاری دستگاه.

گواهی کلید امضای برنامه

نمایش JSON
{
  "signingKeyCertFingerprintSha256": string
}
فیلدها
signingKeyCertFingerprintSha256

string ( bytes format)

الزامی. مقدار هش SHA-256 گواهی کلید امضای برنامه. این مقدار باید یک مقدار هش SHA-256 معتبر، یعنی ۳۲ بایت باشد. در غیر این صورت، این خط‌مشی رد می‌شود.

یک رشته کدگذاری شده با base64.

نقش

نمایش JSON
{
  "roleType": enum (RoleType)
}
فیلدها
roleType

enum ( RoleType )

الزامی. نوع نقشی که یک برنامه می‌تواند داشته باشد.

فعالیت ترجیحی مداوم

نمایش JSON
{
  "receiverActivity": string,
  "actions": [
    string
  ],
  "categories": [
    string
  ]
}
فیلدها
receiverActivity

string

اکتیویتی که باید به عنوان کنترل‌کننده پیش‌فرض اینتنت باشد. این باید نام یک کامپوننت اندروید باشد، مثلاً com.android.enterprise.app/.MainActivity . یا مقدار آن می‌تواند نام پکیج یک برنامه باشد که باعث می‌شود Android Device Policy یک اکتیویتی مناسب از برنامه برای مدیریت اینتنت انتخاب کند.

actions[]

string

اقدامات اینتنت برای مطابقت در فیلتر. اگر هر عملی در فیلتر گنجانده شده باشد، برای مطابقت، عمل یک اینتنت باید یکی از آن مقادیر باشد. اگر هیچ عملی گنجانده نشده باشد، عمل اینتنت نادیده گرفته می‌شود.

categories[]

string

دسته بندی های اینتنت برای تطبیق در فیلتر. یک اینتنت شامل دسته بندی هایی است که به آنها نیاز دارد و همه آنها باید در فیلتر گنجانده شوند تا تطبیق انجام شود. به عبارت دیگر، اضافه کردن یک دسته بندی به فیلتر هیچ تاثیری بر تطبیق ندارد مگر اینکه آن دسته بندی در اینتنت مشخص شده باشد.

به‌روزرسانی سیستم

نمایش JSON
{
  "type": enum (SystemUpdateType),
  "startMinutes": integer,
  "endMinutes": integer,
  "allowedDaysWithoutUpdate": integer,
  "freezePeriods": [
    {
      object (FreezePeriod)
    }
  ]
}
فیلدها
type

enum ( SystemUpdateType )

نوع به‌روزرسانی سیستم برای پیکربندی.

startMinutes

integer

اگر نوع WINDOWED باشد، شروع پنجره تعمیر و نگهداری، که به صورت تعداد دقایق بعد از نیمه شب به وقت محلی دستگاه اندازه‌گیری می‌شود. این مقدار باید بین ۰ تا ۱۴۳۹ باشد.

endMinutes

integer

اگر نوع WINDOWED باشد، پایان پنجره تعمیر و نگهداری، به عنوان تعداد دقایق بعد از نیمه شب بر اساس زمان محلی دستگاه اندازه‌گیری می‌شود. این مقدار باید بین 0 تا 1439 باشد، شامل. اگر این مقدار کمتر از start_minutes باشد، پنجره تعمیر و نگهداری تا نیمه شب ادامه دارد. اگر پنجره تعمیر و نگهداری مشخص شده کمتر از 30 دقیقه باشد، پنجره واقعی تا 30 دقیقه پس از زمان شروع تمدید می‌شود.

allowedDaysWithoutUpdate

integer

اگر این مقدار بزرگتر از صفر باشد، تعداد روزهایی است که پس از انتشار به‌روزرسانی در انتظار، دستگاه می‌تواند بدون دریافت به‌روزرسانی، سازگار باقی بماند. در غیر این صورت، تأثیری ندارد.

freezePeriods[]

object ( FreezePeriod )

یک دوره زمانی تکرارشونده سالانه که در آن به‌روزرسانی‌های سیستم از طریق هوا (OTA) به تعویق می‌افتند تا نسخه سیستم عامل در حال اجرا روی دستگاه متوقف شود. برای جلوگیری از توقف نامحدود دستگاه، هر دوره توقف باید حداقل ۶۰ روز از هم فاصله داشته باشد.

دوره انجماد

نمایش JSON
{
  "startDate": {
    object (Date)
  },
  "endDate": {
    object (Date)
  }
}
فیلدها
startDate

object ( Date )

تاریخ شروع (شامل) دوره انجماد. توجه: day و month باید تنظیم شوند. year نباید تنظیم شود زیرا استفاده نمی‌شود. برای مثال، {"month": 1,"date": 30} .

endDate

object ( Date )

تاریخ پایان (شامل) دوره انجماد. نباید دیرتر از ۹۰ روز از تاریخ شروع باشد. اگر تاریخ پایان زودتر از تاریخ شروع باشد، دوره انجماد به عنوان پایان سال در نظر گرفته می‌شود. توجه: day و month باید تنظیم شوند. year نباید تنظیم شود زیرا استفاده نمی‌شود. به عنوان مثال، {"month": 1,"date": 30} .

تاریخ

نمایش JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
فیلدها
year

integer

سال تاریخ. باید از ۱ تا ۹۹۹۹ باشد، یا برای مشخص کردن تاریخ بدون سال، ۰ باشد.

month

integer

ماه سال. باید از ۱ تا ۱۲ باشد، یا برای مشخص کردن سال بدون ماه و روز، ۰ باشد.

day

integer

روز ماه. باید از ۱ تا ۳۱ باشد و برای سال و ماه معتبر باشد، یا ۰ برای مشخص کردن یک سال به تنهایی یا یک سال و ماه که روز در آن مهم نیست.

تنظیمات گزارش وضعیت

نمایش JSON
{
  "applicationReportsEnabled": boolean,
  "deviceSettingsEnabled": boolean,
  "softwareInfoEnabled": boolean,
  "memoryInfoEnabled": boolean,
  "networkInfoEnabled": boolean,
  "displayInfoEnabled": boolean,
  "powerManagementEventsEnabled": boolean,
  "hardwareStatusEnabled": boolean,
  "systemPropertiesEnabled": boolean,
  "applicationReportingSettings": {
    object (ApplicationReportingSettings)
  },
  "commonCriteriaModeEnabled": boolean,
  "defaultApplicationInfoReportingEnabled": boolean
}
فیلدها
applicationReportsEnabled

boolean

فعال بودن یا نبودن گزارش‌های برنامه .

deviceSettingsEnabled

boolean

آیا گزارش‌دهی تنظیمات دستگاه فعال است یا خیر.

softwareInfoEnabled

boolean

آیا گزارش اطلاعات نرم‌افزار فعال است یا خیر.

memoryInfoEnabled

boolean

آیا گزارش رویدادهای حافظه فعال است یا خیر.

networkInfoEnabled

boolean

آیا گزارش اطلاعات شبکه فعال است یا خیر.

displayInfoEnabled

boolean

آیا گزارش‌دهی نمایشگرها فعال است یا خیر. داده‌های گزارش برای دستگاه‌های شخصی با پروفایل‌های کاری در دسترس نیست.

powerManagementEventsEnabled

boolean

آیا گزارش‌دهی رویدادهای مدیریت برق فعال است یا خیر. داده‌های گزارش برای دستگاه‌های شخصی با پروفایل‌های کاری در دسترس نیست.

hardwareStatusEnabled

boolean

آیا گزارش وضعیت سخت‌افزار فعال است یا خیر. داده‌های گزارش برای دستگاه‌های شخصی با پروفایل‌های کاری در دسترس نیست.

systemPropertiesEnabled

boolean

آیا گزارش‌دهی ویژگی‌های سیستم فعال است یا خیر.

applicationReportingSettings

object ( ApplicationReportingSettings )

تنظیمات گزارش‌دهی برنامه. فقط در صورتی قابل اجرا است که application_reports_enabled مقدار true داشته باشد.

commonCriteriaModeEnabled

boolean

آیا حالت گزارش‌دهی Common Criteria Mode فعال است یا خیر. این حالت فقط در دستگاه‌های متعلق به شرکت پشتیبانی می‌شود.

defaultApplicationInfoReportingEnabled

boolean

اختیاری. آیا گزارش defaultApplicationInfo فعال است یا خیر.

تنظیمات گزارش‌دهی برنامه

نمایش JSON
{
  "includeRemovedApps": boolean
}
فیلدها
includeRemovedApps

boolean

اینکه آیا برنامه‌های حذف‌شده در گزارش‌های برنامه گنجانده می‌شوند یا خیر.

کاربرFacingMessage

نمایش JSON
{
  "localizedMessages": {
    string: string,
    ...
  },
  "defaultMessage": string
}
فیلدها
localizedMessages

map (key: string, value: string)

نقشه‌ای شامل جفت‌های <locale, message> که در آن locale یک کد زبانی BCP 47 خوش‌فرم است، مانند en-US، es-ES یا fr.

یک شیء شامل لیستی از جفت‌های "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

defaultMessage

string

پیام پیش‌فرض در صورتی نمایش داده می‌شود که هیچ پیام محلی‌شده‌ای مشخص نشده باشد یا زبان کاربر با هیچ یک از پیام‌های محلی‌شده مطابقت نداشته باشد. در صورت ارائه هرگونه پیام محلی‌شده، باید یک پیام پیش‌فرض ارائه شود.

LocalizedMessagesEntry

نمایش JSON
{
  "key": string,
  "value": string
}
فیلدها
key

string

value

string

الزامات رمز عبور

نمایش JSON
{
  "passwordMinimumLength": integer,
  "passwordMinimumLetters": integer,
  "passwordMinimumLowerCase": integer,
  "passwordMinimumNonLetter": integer,
  "passwordMinimumNumeric": integer,
  "passwordMinimumSymbols": integer,
  "passwordMinimumUpperCase": integer,
  "passwordQuality": enum (PasswordQuality),
  "passwordHistoryLength": integer,
  "maximumFailedPasswordsForWipe": integer,
  "passwordExpirationTimeout": string,
  "passwordScope": enum (PasswordPolicyScope),
  "requirePasswordUnlock": enum (RequirePasswordUnlock),
  "unifiedLockSettings": enum (UnifiedLockSettings)
}
فیلدها
passwordMinimumLength

integer

حداقل طول مجاز رمز عبور. مقدار 0 به معنی عدم وجود محدودیت است. فقط زمانی اعمال می‌شود که password_quality NUMERIC ، NUMERIC_COMPLEX ، ALPHABETIC ، ALPHANUMERIC یا COMPLEX باشد.

passwordMinimumLetters

integer

حداقل تعداد حروف مورد نیاز در رمز عبور. فقط زمانی اعمال می‌شود که password_quality COMPLEX باشد.

passwordMinimumLowerCase

integer

حداقل تعداد حروف کوچک مورد نیاز در رمز عبور. فقط زمانی اعمال می‌شود که password_quality COMPLEX باشد.

passwordMinimumNonLetter

integer

Minimum number of non-letter characters (numerical digits or symbols) required in the password. Only enforced when password_quality is COMPLEX .

passwordMinimumNumeric

integer

Minimum number of numerical digits required in the password. Only enforced when password_quality is COMPLEX .

passwordMinimumSymbols

integer

Minimum number of symbols required in the password. Only enforced when password_quality is COMPLEX .

passwordMinimumUpperCase

integer

Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX .

passwordQuality

enum ( PasswordQuality )

The required password quality.

passwordHistoryLength

integer

The length of the password history. After setting this field, the user won't be able to enter a new password that is the same as any password in the history. A value of 0 means there is no restriction.

maximumFailedPasswordsForWipe

integer

Number of incorrect device-unlock passwords that can be entered before a device is wiped. A value of 0 means there is no restriction.

passwordExpirationTimeout

string ( Duration format)

Password expiration timeout.

A duration in seconds with up to nine fractional digits, ending with ' s '. Example: "3.5s" .

passwordScope

enum ( PasswordPolicyScope )

The scope that the password requirement applies to.

requirePasswordUnlock

enum ( RequirePasswordUnlock )

The length of time after a device or work profile is unlocked using a strong form of authentication (password, PIN, pattern) that it can be unlocked using any other authentication method (eg fingerprint, trust agents, face). After the specified time period elapses, only strong forms of authentication can be used to unlock the device or work profile.

unifiedLockSettings

enum ( UnifiedLockSettings )

Controls whether a unified lock is allowed for the device and the work profile, on devices running Android 9 and above with a work profile. This can be set only if password_scope is set to SCOPE_PROFILE , the policy will be rejected otherwise. If user has not set a separate work lock and this field is set to REQUIRE_SEPARATE_WORK_LOCK , a NonComplianceDetail is reported with nonComplianceReason set to USER_ACTION .

مدت زمان

نمایش JSON
{
  "seconds": string,
  "nanos": integer
}
فیلدها
seconds

string ( int64 format)

Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

nanos

integer

Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 seconds field and a positive or negative nanos field. For durations of one second or more, a non-zero value for the nanos field must be of the same sign as the seconds field. Must be from -999,999,999 to +999,999,999 inclusive.

PackageNameList

نمایش JSON
{
  "packageNames": [
    string
  ]
}
فیلدها
packageNames[]

string

A list of package names.

ProxyInfo

نمایش JSON
{
  "host": string,
  "port": integer,
  "excludedHosts": [
    string
  ],
  "pacUri": string
}
فیلدها
host

string

The host of the direct proxy.

port

integer

The port of the direct proxy.

excludedHosts[]

string

For a direct proxy, the hosts for which the proxy is bypassed. The host names may contain wildcards such as *.example.com.

pacUri

string

The URI of the PAC script used to configure the proxy.

ChoosePrivateKeyRule

نمایش JSON
{
  "urlPattern": string,
  "packageNames": [
    string
  ],
  "privateKeyAlias": string
}
فیلدها
urlPattern

string

The URL pattern to match against the URL of the request. If not set or empty, it matches all URLs. This uses the regular expression syntax of java.util.regex.Pattern .

packageNames[]

string

The package names to which this rule applies. The signing key certificate fingerprint of the app is verified against the signing key certificate fingerprints provided by Play Store and ApplicationPolicy.signingKeyCerts . If no package names are specified, then the alias is provided to all apps that call KeyChain.choosePrivateKeyAlias or any overloads (but not without calling KeyChain.choosePrivateKeyAlias , even on Android 11 and above). Any app with the same Android UID as a package specified here will have access when they call KeyChain.choosePrivateKeyAlias .

privateKeyAlias

string

The alias of the private key to be used.

AlwaysOnVpnPackage

نمایش JSON
{
  "packageName": string,
  "lockdownEnabled": boolean
}
فیلدها
packageName

string

The package name of the VPN app.

lockdownEnabled

boolean

Disallows networking when the VPN is not connected.

ComplianceRule

نمایش JSON
{
  "disableApps": boolean,
  "packageNamesToDisable": [
    string
  ],

  // Union field condition can be only one of the following:
  "nonComplianceDetailCondition": {
    object (NonComplianceDetailCondition)
  },
  "apiLevelCondition": {
    object (ApiLevelCondition)
  }
  // End of list of possible types for union field condition.
}
فیلدها
disableApps

boolean

If set to true, the rule includes a mitigating action to disable apps so that the device is effectively disabled, but app data is preserved. If the device is running an app in locked task mode, the app will be closed and a UI showing the reason for non-compliance will be displayed.

packageNamesToDisable[]

string

If set, the rule includes a mitigating action to disable apps specified in the list, but app data is preserved.

Union field condition . The condition, which when satisfied, triggers the mitigating actions defined in the rule. Exactly one of the conditions must be set. condition can be only one of the following:
nonComplianceDetailCondition

object ( NonComplianceDetailCondition )

A condition which is satisfied if there exists any matching NonComplianceDetail for the device.

apiLevelCondition

object ( ApiLevelCondition )

A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement.

NonComplianceDetailCondition

نمایش JSON
{
  "settingName": string,
  "nonComplianceReason": enum (NonComplianceReason),
  "packageName": string
}
فیلدها
settingName

string

The name of the policy setting. This is the JSON field name of a top-level Policy field. If not set, then this condition matches any setting name.

nonComplianceReason

enum ( NonComplianceReason )

The reason the device is not in compliance with the setting. If not set, then this condition matches any reason.

packageName

string

The package name of the app that's out of compliance. If not set, then this condition matches any package name.

ApiLevelCondition

نمایش JSON
{
  "minApiLevel": integer
}
فیلدها
minApiLevel

integer

The minimum desired Android Framework API level. If the device doesn't meet the minimum requirement, this condition is satisfied. Must be greater than zero.

SetupAction

نمایش JSON
{
  "title": {
    object (UserFacingMessage)
  },
  "description": {
    object (UserFacingMessage)
  },

  // Union field action can be only one of the following:
  "launchApp": {
    object (LaunchAppAction)
  }
  // End of list of possible types for union field action.
}
فیلدها
title

object ( UserFacingMessage )

Title of this action.

description

object ( UserFacingMessage )

Description of this action.

Union field action . The action to execute during setup. action can be only one of the following:
launchApp

object ( LaunchAppAction )

An action to launch an app. The app will be launched with an intent containing an extra with key com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION set to the boolean value true to indicate that this is a setup action flow. If SetupAction references an app, the corresponding installType in the application policy must be set as REQUIRED_FOR_SETUP or said setup will fail.

LaunchAppAction

نمایش JSON
{

  // Union field launch can be only one of the following:
  "packageName": string
  // End of list of possible types for union field launch.
}
فیلدها

Union field launch .

launch can be only one of the following:

packageName

string

Package name of app to be launched

PolicyEnforcementRule

نمایش JSON
{
  "blockAction": {
    object (BlockAction)
  },
  "wipeAction": {
    object (WipeAction)
  },

  // Union field trigger can be only one of the following:
  "settingName": string
  // End of list of possible types for union field trigger.
}
فیلدها
blockAction

object ( BlockAction )

An action to block access to apps and data on a company owned device or in a work profile. This action also triggers a user-facing notification with information (where possible) on how to correct the compliance issue. Note: wipeAction must also be specified.

wipeAction

object ( WipeAction )

An action to reset a company owned device or delete a work profile. Note: blockAction must also be specified.

Union field trigger . Condition which will trigger this rule. trigger can be only one of the following:
settingName

string

The top-level policy to enforce. For example, applications or passwordPolicies .

BlockAction

نمایش JSON
{
  "blockAfterDays": integer,
  "blockScope": enum (BlockScope)
}
فیلدها
blockAfterDays

integer

Number of days the policy is non-compliant before the device or work profile is blocked. To block access immediately, set to 0. blockAfterDays must be less than wipeAfterDays .

blockScope

enum ( BlockScope )

Specifies the scope of this BlockAction . Only applicable to devices that are company-owned.

WipeAction

نمایش JSON
{
  "wipeAfterDays": integer,
  "preserveFrp": boolean
}
فیلدها
wipeAfterDays

integer

Number of days the policy is non-compliant before the device or work profile is wiped. wipeAfterDays must be greater than blockAfterDays .

preserveFrp

boolean

Whether the factory-reset protection data is preserved on the device. This setting doesn't apply to work profiles.

KioskCustomization

نمایش JSON
{
  "powerButtonActions": enum (PowerButtonActions),
  "systemErrorWarnings": enum (SystemErrorWarnings),
  "systemNavigation": enum (SystemNavigation),
  "statusBar": enum (StatusBar),
  "deviceSettings": enum (DeviceSettings)
}
فیلدها
powerButtonActions

enum ( PowerButtonActions )

Sets the behavior of a device in kiosk mode when a user presses and holds (long-presses) the Power button.

systemErrorWarnings

enum ( SystemErrorWarnings )

Specifies whether system error dialogs for crashed or unresponsive apps are blocked in kiosk mode. When blocked, the system will force-stop the app as if the user chooses the "close app" option on the UI.

systemNavigation

enum ( SystemNavigation )

Specifies which navigation features are enabled (eg Home, Overview buttons) in kiosk mode.

statusBar

enum ( StatusBar )

Specifies whether system info and notifications are disabled in kiosk mode.

deviceSettings

enum ( DeviceSettings )

Specifies whether the Settings app is allowed in kiosk mode.

AdvancedSecurityOverrides

نمایش JSON
{
  "untrustedAppsPolicy": enum (UntrustedAppsPolicy),
  "googlePlayProtectVerifyApps": enum (GooglePlayProtectVerifyApps),
  "developerSettings": enum (DeveloperSettings),
  "commonCriteriaMode": enum (CommonCriteriaMode),
  "personalAppsThatCanReadWorkNotifications": [
    string
  ],
  "mtePolicy": enum (MtePolicy),
  "contentProtectionPolicy": enum (ContentProtectionPolicy)
}
فیلدها
untrustedAppsPolicy

enum ( UntrustedAppsPolicy )

The policy for untrusted apps (apps from unknown sources) enforced on the device. Replaces install_unknown_sources_allowed (deprecated).

googlePlayProtectVerifyApps

enum ( GooglePlayProtectVerifyApps )

Whether Google Play Protect verification is enforced. Replaces ensureVerifyAppsEnabled (deprecated).

developerSettings

enum ( DeveloperSettings )

Controls access to developer settings: developer options and safe boot. Replaces safeBootDisabled (deprecated) and debuggingFeaturesAllowed (deprecated). On personally-owned devices with a work profile, setting this policy will not disable safe boot. In this case, a NonComplianceDetail with MANAGEMENT_MODE is reported.

commonCriteriaMode

enum ( CommonCriteriaMode )

Controls Common Criteria Mode—security standards defined in the Common Criteria for Information Technology Security Evaluation (CC). Enabling Common Criteria Mode increases certain security components on a device, see CommonCriteriaMode for details.

Warning: Common Criteria Mode enforces a strict security model typically only required for IT products used in national security systems and other highly sensitive organizations. Standard device use may be affected. Only enabled if required. If Common Criteria Mode is turned off after being enabled previously, all user-configured Wi-Fi networks may be lost and any enterprise-configured Wi-Fi networks that require user input may need to be reconfigured.

personalAppsThatCanReadWorkNotifications[]

string

Personal apps that can read work profile notifications using a NotificationListenerService . By default, no personal apps (aside from system apps) can read work notifications. Each value in the list must be a package name.

mtePolicy

enum ( MtePolicy )

Optional. Controls Memory Tagging Extension (MTE) on the device. The device needs to be rebooted to apply changes to the MTE policy. On Android 15 and above, a NonComplianceDetail with PENDING is reported if the policy change is pending a device reboot.

contentProtectionPolicy

enum ( ContentProtectionPolicy )

Optional. Controls whether content protection, which scans for deceptive apps, is enabled. This is supported on Android 15 and above.

PersonalUsagePolicies

نمایش JSON
{
  "cameraDisabled": boolean,
  "screenCaptureDisabled": boolean,
  "accountTypesWithManagementDisabled": [
    string
  ],
  "maxDaysWithWorkOff": integer,
  "personalPlayStoreMode": enum (PlayStoreMode),
  "personalApplications": [
    {
      object (PersonalApplicationPolicy)
    }
  ],
  "privateSpacePolicy": enum (PrivateSpacePolicy),
  "bluetoothSharing": enum (BluetoothSharing)
}
فیلدها
cameraDisabled

boolean

If true, the camera is disabled on the personal profile.

screenCaptureDisabled

boolean

If true, screen capture is disabled for all users.

accountTypesWithManagementDisabled[]

string

Account types that can't be managed by the user.

maxDaysWithWorkOff

integer

Controls how long the work profile can stay off. The minimum duration must be at least 3 days. Other details are as follows:

  • If the duration is set to 0, the feature is turned off.
  • If the duration is set to a value smaller than the minimum duration, the feature returns an error.
Note: If you want to avoid personal profiles being suspended during long periods of off-time, you can temporarily set a large value for this parameter.

personalPlayStoreMode

enum ( PlayStoreMode )

Used together with personalApplications to control how apps in the personal profile are allowed or blocked.

personalApplications[]

object ( PersonalApplicationPolicy )

Policy applied to applications in the personal profile.

privateSpacePolicy

enum ( PrivateSpacePolicy )

Optional. Controls whether a private space is allowed on the device.

bluetoothSharing

enum ( BluetoothSharing )

Optional. Whether bluetooth sharing is allowed.

PersonalApplicationPolicy

نمایش JSON
{
  "packageName": string,
  "installType": enum (InstallType)
}
فیلدها
packageName

string

The package name of the application.

installType

enum ( InstallType )

The type of installation to perform.

OncCertificateProvider

نمایش JSON
{
  "certificateReferences": [
    string
  ],

  // Union field endpoint can be only one of the following:
  "contentProviderEndpoint": {
    object (ContentProviderEndpoint)
  }
  // End of list of possible types for union field endpoint.
}
فیلدها
certificateReferences[]

string

This feature is not generally available.

Union field endpoint .

This feature is not generally available. endpoint can be only one of the following:

contentProviderEndpoint

object ( ContentProviderEndpoint )

This feature is not generally available.

ContentProviderEndpoint

نمایش JSON
{
  "uri": string,
  "packageName": string,
  "signingCertsSha256": [
    string
  ]
}
فیلدها
uri

string

This feature is not generally available.

packageName

string

This feature is not generally available.

signingCertsSha256[]

string

Required. This feature is not generally available.

CrossProfilePolicies

نمایش JSON
{
  "showWorkContactsInPersonalProfile": enum (ShowWorkContactsInPersonalProfile),
  "crossProfileCopyPaste": enum (CrossProfileCopyPaste),
  "crossProfileDataSharing": enum (CrossProfileDataSharing),
  "workProfileWidgetsDefault": enum (WorkProfileWidgetsDefault),
  "crossProfileAppFunctions": enum (CrossProfileAppFunctions),
  "exemptionsToShowWorkContactsInPersonalProfile": {
    object (PackageNameList)
  }
}
فیلدها
showWorkContactsInPersonalProfile

enum ( ShowWorkContactsInPersonalProfile )

Whether personal apps can access contacts stored in the work profile.

See also exemptions_to_show_work_contacts_in_personal_profile .

crossProfileCopyPaste

enum ( CrossProfileCopyPaste )

Whether text copied from one profile (personal or work) can be pasted in the other profile.

crossProfileDataSharing

enum ( CrossProfileDataSharing )

Whether data from one profile (personal or work) can be shared with apps in the other profile. Specifically controls simple data sharing via intents. Management of other cross-profile communication channels, such as contact search, copy/paste, or connected work & personal apps, are configured separately.

workProfileWidgetsDefault

enum ( WorkProfileWidgetsDefault )

Specifies the default behaviour for work profile widgets. If the policy does not specify work_profile_widgets for a specific application, it will behave according to the value specified here.

crossProfileAppFunctions

enum ( CrossProfileAppFunctions )

Optional. Controls whether personal profile apps can invoke app functions exposed by apps in the work profile.

exemptionsToShowWorkContactsInPersonalProfile

object ( PackageNameList )

List of apps which are excluded from the ShowWorkContactsInPersonalProfile setting. For this to be set, ShowWorkContactsInPersonalProfile must be set to one of the following values:

  • SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_ALLOWED . In this case, these exemptions act as a blocklist.
  • SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_DISALLOWED . In this case, these exemptions act as an allowlist.
  • SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_DISALLOWED_EXCEPT_SYSTEM . In this case, these exemptions act as an allowlist, in addition to the already allowlisted system apps.

Supported on Android 14 and above. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 14.

UsageLog

نمایش JSON
{
  "enabledLogTypes": [
    enum (LogType)
  ],
  "uploadOnCellularAllowed": [
    enum (LogType)
  ]
}
فیلدها
enabledLogTypes[]

enum ( LogType )

Specifies which log types are enabled. Note that users will receive on-device messaging when usage logging is enabled.

uploadOnCellularAllowed[]

enum ( LogType )

Specifies which of the enabled log types can be uploaded over mobile data. By default logs are queued for upload when the device connects to WiFi.

DeviceConnectivityManagement

نمایش JSON
{
  "usbDataAccess": enum (UsbDataAccess),
  "configureWifi": enum (ConfigureWifi),
  "wifiDirectSettings": enum (WifiDirectSettings),
  "tetheringSettings": enum (TetheringSettings),
  "wifiSsidPolicy": {
    object (WifiSsidPolicy)
  },
  "wifiRoamingPolicy": {
    object (WifiRoamingPolicy)
  },
  "bluetoothSharing": enum (BluetoothSharing),
  "preferentialNetworkServiceSettings": {
    object (PreferentialNetworkServiceSettings)
  },
  "apnPolicy": {
    object (ApnPolicy)
  }
}
فیلدها
usbDataAccess

enum ( UsbDataAccess )

Controls what files and/or data can be transferred via USB. Supported only on company-owned devices.

configureWifi

enum ( ConfigureWifi )

Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks.

wifiDirectSettings

enum ( WifiDirectSettings )

Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above.

tetheringSettings

enum ( TetheringSettings )

Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering.

wifiSsidPolicy

object ( WifiSsidPolicy )

Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can be configured on the device. Supported on company-owned devices running Android 13 and above.

wifiRoamingPolicy

object ( WifiRoamingPolicy )

Optional. Wi-Fi roaming policy.

bluetoothSharing

enum ( BluetoothSharing )

Optional. Controls whether Bluetooth sharing is allowed.

preferentialNetworkServiceSettings

object ( PreferentialNetworkServiceSettings )

Optional. Preferential network service configuration. Setting this field will override preferentialNetworkService . This can be set on both work profiles and fully managed devices on Android 13 and above. See 5G network slicing guide for more details.

apnPolicy

object ( ApnPolicy )

Optional. Access Point Name (APN) policy. Configuration for Access Point Names (APNs) which may override any other APNs on the device. See OVERRIDE_APNS_ENABLED and overrideApns for details.

WifiSsidPolicy

نمایش JSON
{
  "wifiSsidPolicyType": enum (WifiSsidPolicyType),
  "wifiSsids": [
    {
      object (WifiSsid)
    }
  ]
}
فیلدها
wifiSsidPolicyType

enum ( WifiSsidPolicyType )

Type of the Wi-Fi SSID policy to be applied.

wifiSsids[]

object ( WifiSsid )

Optional. List of Wi-Fi SSIDs that should be applied in the policy. This field must be non-empty when WifiSsidPolicyType is set to WIFI_SSID_ALLOWLIST . If this is set to a non-empty list, then a NonComplianceDetail detail with API_LEVEL is reported if the Android version is less than 13 and a NonComplianceDetail with MANAGEMENT_MODE is reported for non-company-owned devices.

WifiSsid

نمایش JSON
{
  "wifiSsid": string
}
فیلدها
wifiSsid

string

Required. Wi-Fi SSID represented as a string.

WifiRoamingPolicy

نمایش JSON
{
  "wifiRoamingSettings": [
    {
      object (WifiRoamingSetting)
    }
  ]
}
فیلدها
wifiRoamingSettings[]

object ( WifiRoamingSetting )

Optional. Wi-Fi roaming settings. SSIDs provided in this list must be unique, the policy will be rejected otherwise.

WifiRoamingSetting

نمایش JSON
{
  "wifiSsid": string,
  "wifiRoamingMode": enum (WifiRoamingMode)
}
فیلدها
wifiSsid

string

Required. SSID of the Wi-Fi network.

wifiRoamingMode

enum ( WifiRoamingMode )

Required. Wi-Fi roaming mode for the specified SSID.

PreferentialNetworkServiceSettings

نمایش JSON
{
  "preferentialNetworkServiceConfigs": [
    {
      object (PreferentialNetworkServiceConfig)
    }
  ],
  "defaultPreferentialNetworkId": enum (PreferentialNetworkId)
}
فیلدها
preferentialNetworkServiceConfigs[]

object ( PreferentialNetworkServiceConfig )

Required. Preferential network service configurations which enables having multiple enterprise slices. There must not be multiple configurations with the same preferentialNetworkId . If a configuration is not referenced by any application by setting ApplicationPolicy.preferentialNetworkId or by setting defaultPreferentialNetworkId , it will be ignored. For devices on 4G networks, enterprise APN needs to be configured additionally to set up data call for preferential network service. These APNs can be added using apnPolicy .

defaultPreferentialNetworkId

enum ( PreferentialNetworkId )

Required. Default preferential network ID for the applications that are not in applications or if ApplicationPolicy.preferentialNetworkId is set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED . There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs , unless this is set to NO_PREFERENTIAL_NETWORK . If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED or unset, this defaults to NO_PREFERENTIAL_NETWORK . Note: If the default preferential network is misconfigured, applications with no ApplicationPolicy.preferentialNetworkId set are not able to access the internet. This setting does not apply to the following critical apps:

  • com.google.android.apps.work.clouddpc
  • com.google.android.gms

ApplicationPolicy.preferentialNetworkId can still be used to configure the preferential network for them.

PreferentialNetworkServiceConfig

نمایش JSON
{
  "preferentialNetworkId": enum (PreferentialNetworkId),
  "fallbackToDefaultConnection": enum (FallbackToDefaultConnection),
  "nonMatchingNetworks": enum (NonMatchingNetworks)
}
فیلدها
preferentialNetworkId

enum ( PreferentialNetworkId )

Required. Preferential network identifier. This must not be set to NO_PREFERENTIAL_NETWORK or PREFERENTIAL_NETWORK_ID_UNSPECIFIED , the policy will be rejected otherwise.

fallbackToDefaultConnection

enum ( FallbackToDefaultConnection )

Optional. Whether fallback to the device-wide default network is allowed. If this is set to FALLBACK_TO_DEFAULT_CONNECTION_ALLOWED , then nonMatchingNetworks must not be set to NON_MATCHING_NETWORKS_DISALLOWED , the policy will be rejected otherwise. Note: If this is set to FALLBACK_TO_DEFAULT_CONNECTION_DISALLOWED , applications are not able to access the internet if the 5G slice is not available.

nonMatchingNetworks

enum ( NonMatchingNetworks )

Optional. Whether apps this configuration applies to are blocked from using networks other than the preferential service. If this is set to NON_MATCHING_NETWORKS_DISALLOWED , then fallbackToDefaultConnection must be set to FALLBACK_TO_DEFAULT_CONNECTION_DISALLOWED .

ApnPolicy

نمایش JSON
{
  "overrideApns": enum (OverrideApns),
  "apnSettings": [
    {
      object (ApnSetting)
    }
  ]
}
فیلدها
overrideApns

enum ( OverrideApns )

Optional. Whether override APNs are disabled or enabled. See DevicePolicyManager.setOverrideApnsEnabled for more details.

apnSettings[]

object ( ApnSetting )

Optional. APN settings for override APNs. There must not be any conflict between any of APN settings provided, otherwise the policy will be rejected. Two ApnSetting s are considered to conflict when all of the following fields match on both: numericOperatorId , apn , proxyAddress , proxyPort , mmsProxyAddress , mmsProxyPort , mmsc , mvnoType , protocol , roamingProtocol . If some of the APN settings result in non-compliance of INVALID_VALUE , they will be ignored. This can be set on fully managed devices on Android 10 and above. This can also be set on work profiles on Android 13 and above and only with ApnSetting 's with ENTERPRISE APN type. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with MANAGEMENT_MODE is reported for work profiles on Android versions less than 13.

ApnSetting

نمایش JSON
{
  "apnTypes": [
    enum (ApnType)
  ],
  "apn": string,
  "displayName": string,
  "alwaysOnSetting": enum (AlwaysOnSetting),
  "authType": enum (AuthType),
  "carrierId": integer,
  "mmsProxyAddress": string,
  "mmsProxyPort": integer,
  "mmsc": string,
  "mtuV4": integer,
  "mtuV6": integer,
  "mvnoType": enum (MvnoType),
  "networkTypes": [
    enum (NetworkType)
  ],
  "username": string,
  "password": string,
  "numericOperatorId": string,
  "protocol": enum (Protocol),
  "roamingProtocol": enum (Protocol),
  "proxyAddress": string,
  "proxyPort": integer
}
فیلدها
apnTypes[]

enum ( ApnType )

Required. Usage categories for the APN. Policy will be rejected if this field is empty or contains APN_TYPE_UNSPECIFIED or duplicates. Multiple APN types can be set on fully managed devices. ENTERPRISE is the only allowed APN type on work profiles. A NonComplianceDetail with MANAGEMENT_MODE is reported for any other value on work profiles. APN types that are not supported on the device or management mode will be ignored. If this results in the empty list, the APN setting will be ignored, because apnTypes is a required field. A NonComplianceDetail with INVALID_VALUE is reported if none of the APN types are supported on the device or management mode.

apn

string

Required. Name of the APN. Policy will be rejected if this field is empty.

displayName

string

Required. Human-readable name that describes the APN. Policy will be rejected if this field is empty.

alwaysOnSetting

enum ( AlwaysOnSetting )

Optional. Whether User Plane resources have to be activated during every transition from CM-IDLE mode to CM-CONNECTED state for this APN. See 3GPP TS 23.501 section 5.6.13.

authType

enum ( AuthType )

Optional. Authentication type of the APN.

carrierId

integer

Optional. Carrier ID for the APN. A value of 0 (default) means not set and negative values are rejected.

mmsProxyAddress

string

Optional. MMS (Multimedia Messaging Service) proxy address of the APN which can be an IP address or hostname (not a URL).

mmsProxyPort

integer

Optional. MMS (Multimedia Messaging Service) proxy port of the APN. A value of 0 (default) means not set and negative values are rejected.

mmsc

string

Optional. MMSC (Multimedia Messaging Service Center) URI of the APN.

mtuV4

integer

Optional. The default MTU (Maximum Transmission Unit) size in bytes of the IPv4 routes brought up by this APN setting. A value of 0 (default) means not set and negative values are rejected. Supported on Android 13 and above. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 13.

mtuV6

integer

Optional. The MTU (Maximum Transmission Unit) size of the IPv6 mobile interface to which the APN connected. A value of 0 (default) means not set and negative values are rejected. Supported on Android 13 and above. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 13.

mvnoType

enum ( MvnoType )

Optional. MVNO match type for the APN.

networkTypes[]

enum ( NetworkType )

Optional. Radio technologies (network types) the APN may use. Policy will be rejected if this field contains NETWORK_TYPE_UNSPECIFIED or duplicates.

username

string

Optional. APN username of the APN.

password

string

Optional. APN password of the APN.

numericOperatorId

string

Optional. The numeric operator ID of the APN. Numeric operator ID is defined as MCC (Mobile Country Code) + MNC (Mobile Network Code).

protocol

enum ( Protocol )

Optional. The protocol to use to connect to this APN.

roamingProtocol

enum ( Protocol )

Optional. The protocol to use to connect to this APN while the device is roaming.

proxyAddress

string

Optional. The proxy address of the APN.

proxyPort

integer

Optional. The proxy port of the APN. A value of 0 (default) means not set and negative values are rejected.

DeviceRadioState

نمایش JSON
{
  "wifiState": enum (WifiState),
  "airplaneModeState": enum (AirplaneModeState),
  "ultraWidebandState": enum (UltraWidebandState),
  "cellularTwoGState": enum (CellularTwoGState),
  "minimumWifiSecurityLevel": enum (MinimumWifiSecurityLevel),
  "userInitiatedAddEsimSettings": enum (UserInitiatedAddEsimSettings)
}
فیلدها
wifiState

enum ( WifiState )

Controls current state of Wi-Fi and if user can change its state.

airplaneModeState

enum ( AirplaneModeState )

Controls whether airplane mode can be toggled by the user or not.

ultraWidebandState

enum ( UltraWidebandState )

Controls the state of the ultra wideband setting and whether the user can toggle it on or off.

cellularTwoGState

enum ( CellularTwoGState )

Controls whether cellular 2G setting can be toggled by the user or not.

minimumWifiSecurityLevel

enum ( MinimumWifiSecurityLevel )

The minimum required security level of Wi-Fi networks that the device can connect to.

userInitiatedAddEsimSettings

enum ( UserInitiatedAddEsimSettings )

Optional. Controls whether the user is allowed to add eSIM profiles.

DisplaySettings

نمایش JSON
{
  "screenBrightnessSettings": {
    object (ScreenBrightnessSettings)
  },
  "screenTimeoutSettings": {
    object (ScreenTimeoutSettings)
  }
}
فیلدها
screenBrightnessSettings

object ( ScreenBrightnessSettings )

Optional. Controls the screen brightness settings.

screenTimeoutSettings

object ( ScreenTimeoutSettings )

Optional. Controls the screen timeout settings.

ScreenBrightnessSettings

نمایش JSON
{
  "screenBrightnessMode": enum (ScreenBrightnessMode),
  "screenBrightness": integer
}
فیلدها
screenBrightnessMode

enum ( ScreenBrightnessMode )

Optional. Controls the screen brightness mode.

screenBrightness

integer

Optional. The screen brightness between 1 and 255 where 1 is the lowest and 255 is the highest brightness. A value of 0 (default) means no screen brightness set. Any other value is rejected. screenBrightnessMode must be either BRIGHTNESS_AUTOMATIC or BRIGHTNESS_FIXED to set this. Supported on Android 9 and above on fully managed devices. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 9. Supported on work profiles on company-owned devices on Android 15 and above.

ScreenTimeoutSettings

نمایش JSON
{
  "screenTimeoutMode": enum (ScreenTimeoutMode),
  "screenTimeout": string
}
فیلدها
screenTimeoutMode

enum ( ScreenTimeoutMode )

Optional. Controls whether the user is allowed to configure the screen timeout.

screenTimeout

string ( Duration format)

Optional. Controls the screen timeout duration. The screen timeout duration must be greater than 0, otherwise it is rejected. Additionally, it should not be greater than maximumTimeToLock , otherwise the screen timeout is set to maximumTimeToLock and a NonComplianceDetail with INVALID_VALUE reason and SCREEN_TIMEOUT_GREATER_THAN_MAXIMUM_TIME_TO_LOCK specific reason is reported. If the screen timeout is less than a certain lower bound, it is set to the lower bound. The lower bound may vary across devices. If this is set, screenTimeoutMode must be SCREEN_TIMEOUT_ENFORCED . Supported on Android 9 and above on fully managed devices. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 9. Supported on work profiles on company-owned devices on Android 15 and above.

A duration in seconds with up to nine fractional digits, ending with ' s '. Example: "3.5s" .

WorkAccountSetupConfig

نمایش JSON
{
  "authenticationType": enum (AuthenticationType),
  "requiredAccountEmail": string
}
فیلدها
authenticationType

enum ( AuthenticationType )

Optional. The authentication type of the user on the device.

requiredAccountEmail

string

Optional. The specific google work account email address to be added. This field is only relevant if authenticationType is GOOGLE_AUTHENTICATED . This must be an enterprise account and not a consumer account. Once set and a Google authenticated account is added to the device, changing this field will have no effect, and thus recommended to be set only once.

DefaultApplicationSetting

نمایش JSON
{
  "defaultApplicationType": enum (DefaultApplicationType),
  "defaultApplications": [
    {
      object (DefaultApplication)
    }
  ],
  "defaultApplicationScopes": [
    enum (DefaultApplicationScope)
  ]
}
فیلدها
defaultApplicationType

enum ( DefaultApplicationType )

Required. The app type to set the default application.

defaultApplications[]

object ( DefaultApplication )

Required. The list of applications that can be set as the default app for a given type. This list must not be empty or contain duplicates. The first app in the list that is installed and qualified for the defaultApplicationType (eg SMS app for DEFAULT_SMS ) is set as the default app. The signing key certificate fingerprint of the app on the device must also match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts in order to be set as the default.

If the defaultApplicationScopes contains SCOPE_FULLY_MANAGED or SCOPE_WORK_PROFILE , the app must have an entry in applications with installType set to a value other than BLOCKED .

A NonComplianceDetail with APP_NOT_INSTALLED reason and DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if none of the apps in the list are installed. A NonComplianceDetail with INVALID_VALUE reason and DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if at least one app is installed but the policy fails to apply due to other reasons (eg the app is not of the right type).

When applying to SCOPE_PERSONAL_PROFILE on a company-owned device with a work profile, only pre-installed system apps can be set as the default. A NonComplianceDetail with INVALID_VALUE reason and DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if the policy fails to apply to the personal profile.

defaultApplicationScopes[]

enum ( DefaultApplicationScope )

Required. The scopes to which the policy should be applied. This list must not be empty or contain duplicates.

A NonComplianceDetail with MANAGEMENT_MODE reason and DEFAULT_APPLICATION_SETTING_UNSUPPORTED_SCOPES specific reason is reported if none of the specified scopes can be applied to the management mode (eg a fully managed device receives a policy with only SCOPE_PERSONAL_PROFILE in the list).

DefaultApplication

نمایش JSON
{
  "packageName": string
}
فیلدها
packageName

string

Required. The package name that should be set as the default application. The policy is rejected if the package name is invalid.

Tool Annotations

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌