기기 제어
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
이 가이드의 기능은 기기 정책 컨트롤러 (DPC) 앱에 구현할 수 있는 기기 관리 기능을 설명합니다. TestDPC 앱을 Android의 엔터프라이즈 기능에 관한 샘플 코드 소스로 사용할 수도 있습니다.
DPC 앱은 개인 기기에서 프로필 소유자 모드로 실행되거나 완전 관리형 기기에서 기기 소유자 모드로 실행될 수 있습니다. 다음 표는 DPC가 프로필 소유자 모드 또는 기기 소유자 모드에서 실행될 때 사용할 수 있는 기능을 나타냅니다.
맞춤 잠금 화면 메시지 만들기
기기 소유자 모드에서 실행되는 DPC는 setDeviceOwnerLockScreenInfo
메서드를 사용하여 사용자의 기기에 맞춤 잠금 화면 메시지를 만들 수 있습니다. 이 메시지는 기기가 잠겨 있을 때 기기 화면에 표시되며 분실 또는 도난당한 기기에 유용합니다. 일반적인 메시지는 '이 휴대전화의 주인은 <company name>
입니다. 휴대전화를 찾은 경우 <phone number>
번으로 전화해 주세요.'입니다.
데이터 로밍 사용 중지
데이터 로밍을 사용하면 이동통신사 청구서에 상당한 요금이 청구될 수 있습니다. 이러한 비용을 간소화하기 위해 기기 소유자 모드에서 실행되는 DPC는 DISALLOW_DATA ROAMING
제한을 설정하여 데이터 로밍을 사용 중지할 수 있습니다. DPC에서 사용자 제한을 설정하면 사용자는 기기의 설정을 사용하여 데이터 로밍을 변경할 수 없습니다.
설정이 차단된 경우 사용자에게 맞춤 메시지 표시
사용자가 IT 부서에서 차단한 설정이나 기능을 클릭하면 지원 메시지에 기능에 액세스할 수 없는 이유가 간단히 설명됩니다.
이러한 메시지는 '작업이 허용되지 않음'보다 더 구체적인 설명을 제공할 수 있습니다. 기기 소유자 또는 프로필 소유자 모드에서 실행되는 DPC는 DevicePolicyManager
setShortSupportMessage()
및 setLongSupportMessage()
메서드를 사용하여 이러한 메시지를 맞춤설정할 수 있습니다.
지원 메시지 만들기
설정이 제한된 이유를 설명하려면 다음과 같이 짧은 메시지 또는 긴 메시지를 사용할 수 있습니다.
이러한 메시지 중 하나를 번역해야 하는 경우 DeviceAdminReceiver
는 ACTION_LOCALE_CHANGED
브로드캐스트를 리슨하고 적절하게 이 문자열의 새 버전을 설정해야 합니다.
배경화면 잠그기
Android 기기를 공유 기기로 실행하는 학교나 회사와 같은 조직은 사용자가 기기 홈 화면의 배경화면을 변경하지 못하도록 차단할 수 있습니다.
배경화면을 잠그려면 기기 소유자 또는 프로필 소유자 모드에서 실행되는 DPC가 DISALLOW_SET_WALLPAPER
를 true
로 설정하면 됩니다. 이 설정의 기본값은 false
입니다.
고객 사용자 아이콘 잠금
기기 소유자 모드 또는 프로필 소유자 모드에서 실행되는 DPC는 사용자를 추가하고 각 사용자의 아이콘을 지정할 수 있습니다. 이 사용자 아이콘은 기기에만 표시되며 Gmail 메시지 또는 Google Plus 프로필과 같은 다른 Google 서비스에 표시되는 프로필 아이콘과는 별개입니다.
DPC는 DISALLOW_SET_USER_ICON
을 true
로 구성하여 사용자가 아이콘을 변경하지 못하도록 제한할 수 있습니다. 이 설정의 기본값은 false
입니다.
기기 상태 및 상태 원격 모니터링
기기 소유자 또는 프로필 소유자 모드에서 실행되는 DPC는 Android 기기에서 실행되는 디지털 신호계 디스플레이나 키오스크와 같이 원격 위치에서 실행되는 무인 기기를 모니터링할 수 있습니다. 이를 위해 DPC는 HardwarePropertiesManager
인터페이스를 사용하여 GPU 온도, CPU 사용량과 같은 기기 상태에 관한 정보를 가져옵니다. 이는 과열이나 기타 문제로 인해 자동으로 꺼지는 기기의 문제를 진단하는 데 유용합니다.
기기의 하드웨어 속성 관리자 서비스에 액세스하려면 문자열 Context.HARDWARE_PROPERTIES_SERVICE
와 함께 Context.getSystemService()
를 사용합니다.
Android 기기 원격 재부팅
DPC는 기기 소유자 모드에서 실행되는 경우에만 Android 기기를 원격으로 재부팅할 수 있습니다. 경우에 따라 인클로저 내의 공공 장소에 배치되거나 디지털 사이니지 디스플레이로 배치된 기기는 전원 버튼에 쉽게 액세스하지 못하게 할 수 있습니다. 기기를 재부팅해야 하는 경우 DPC는 DevicePolicyManager.reboot()
메서드를 사용하여 재부팅할 수 있습니다.
통화가 진행 중인 경우 기기가 재부팅되지 않습니다. 재부팅하려면 기기가 유휴 상태여야 합니다. 이는 관리자가 재부팅 요청으로 사용자의 전화 통화를 중단하는 것을 방지하기 위한 조치입니다. 기기가 활성 상태이면 CALL_STATE_IDLE
까지 IllegalStateException
이 발생합니다.
사용자가 블루투스를 통해 파일을 전송하지 못하도록 차단
기기 소유자와 프로필 소유자는 사용자가 DISALLOW_BLUETOOTH_SHARING
를 사용하여 블루투스를 통해 파일을 전송하지 못하도록 차단할 수 있습니다. 파일 수신에는 영향을 미치지 않습니다. 기기 소유자가 설정하면 DISALLOW_BLUETOOTH_SHARING
는 기기의 모든 사용자에게 적용됩니다.
이 옵션을 사용하면 IT 관리자가 빠른 공유의 동작을 제어할 수 있습니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Device control\n\nThe features in this guide describe device management capabilities you can\nimplement in your [device policy controller](/work/dpc/build-dpc) (DPC)\napp. You can also use the\n[TestDPC](https://github.com/googlesamples/android-testdpc/) app as\na source of sample code for Android's enterprise features.\n\nA DPC app can run in profile owner mode on personal devices or in device owner\nmode on fully managed devices. This table indicates which features are\navailable when the DPC runs in [profile owner mode or device owner\nmode](https://developers.google.com/android/work/play/emm-api/prov-devices#modes_of_operation):\n\n| **Feature** | **Profile owner** | **Device owner** |\n|---------------------------------------------------------------------------------------------------------------------|-------------------|------------------|\n| [Create a custom lock screen message](#create_a_custom_lock_screen_message) | | ✓ |\n| [Disable data roaming](#disable_data_roaming) | | ✓ |\n| [Give users a customized message if a setting is blocked](#give_users_a_customized_message_if_a_setting_is_blocked) | ✓ | ✓ |\n| [Lock down the wallpaper](#lock_down_the_wallpaper) | ✓ | ✓ |\n| [Lock down a customer user icon](#lock_down_a_customer_user_icon) | ✓ | ✓ |\n| [Remotely monitor device health and status](#remotely_monitor_device_health_and_status) | ✓ | ✓ |\n| [Remotely reboot an Android device](#remotely_reboot_an_android_device) | | ✓ |\n| [Prevent users sending files over Bluetooth](#prevent_users_sending_files_over_bluetooth) | ✓ | ✓ |\n\nCreate a custom lock screen message\n-----------------------------------\n\nRunning in device owner mode, a DPC can create a custom lock screen message on\ntheir users' devices using the [`setDeviceOwnerLockScreenInfo`](/reference/android/app/admin/DevicePolicyManager#setDeviceOwnerLockScreenInfo(android.content.ComponentName,%20java.lang.CharSequence))\nmethod. This message displays on the device screen when locked, and is useful\nfor a lost or stolen device. A common message is \"This phone belongs to\n*`\u003ccompany name\u003e`* , call *`\u003cphone number\u003e`* if found.\"\n\nDisable data roaming\n--------------------\n\nData roaming can cause significant charges on Mobile carrier bills. To help\nstreamline those costs, a DPC running in device owner mode can disable\ndata roaming by setting the [`DISALLOW_DATA ROAMING`](/reference/android/os/UserManager#DISALLOW_DATA_ROAMING) restriction. Once the\nuser restriction is set by the DPC, a user can't change data roaming using\n**Settings** on their device.\n\nGive users a customized message if a setting is blocked\n-------------------------------------------------------\n\nWhen a user clicks a setting or feature blocked by their IT department, the\nsupport message gives a brief explanation of why they can't access the feature.\n\nThese messages can be more descriptive than \"Action not allowed\". A DPC running\nin device owner or profile owner mode can customize these messages\nusing the\n[`DevicePolicyManager`](/reference/android/app/admin/DevicePolicyManager) [`setShortSupportMessage()`](/reference/android/app/admin/DevicePolicyManager#setShortSupportMessage(android.content.ComponentName,%20java.lang.CharSequence))\nand [`setLongSupportMessage()`](/reference/android/app/admin/DevicePolicyManager#setLongSupportMessage(android.content.ComponentName,%20java.lang.CharSequence)) methods.\n\n### Create support messages\n\nTo explain why a setting is restricted, you can use short or long messages:\n\n- **To create a short message** , use the [`setShortSupportMessage()`](/reference/android/app/admin/DevicePolicyManager#setShortSupportMessage(android.content.ComponentName,%20java.lang.CharSequence))\n method.\n\n - The short message is restricted to 200 characters.\n - A common message is \"This setting is disabled by your admin. Contact *'[yourITdepartment@example.com](mailto:yourITdepartment@example.com)'* for support.\"\n- **To create a long message** , use the [`setLongSupportMessage()`](/reference/android/app/admin/DevicePolicyManager#setLongSupportMessage(android.content.ComponentName,%20java.lang.CharSequence)) method.\n The user can view this message on their device under **Settings** \\\u003e\n **Security** \\\u003e **Device admins**, and then select a specific admin.\n\nIf either of these messages needs to be translated, the\n[`DeviceAdminReceiver`](/reference/android/app/admin/DeviceAdminReceiver) needs to listen to the [`ACTION_LOCALE_CHANGED`](/reference/android/content/Intent#ACTION_LOCALE_CHANGED)\nbroadcast and set a new version of this string accordingly.\n\nLock down the wallpaper\n-----------------------\n\nOrganizations such as schools or companies that run Android devices as shared\ndevices can block their users from changing the wallpaper on their device home\nscreen.\n\nTo lock down the wallpaper, a DPC running in device owner or profile owner\nmode can set [`DISALLOW_SET_WALLPAPER`](/reference/android/os/UserManager#DISALLOW_SET_WALLPAPER) to `true`. The default for this\nsetting is `false`.\n\nLock down a customer user icon\n------------------------------\n\nA DPC running in either device owner or profile owner mode can add users and\nspecify an icon for each user. This user icon is only on the device and is\nseparate from the profile icon that appears in other Google properties, such as\na Gmail message or Google Plus profile.\n\nA DPC can configure the [`DISALLOW_SET_USER_ICON`](/reference/android/os/UserManager#DISALLOW_SET_USER_ICON) to `true` to restrict a\nuser from changing their icon. The default for this setting is `false`.\n\nRemotely monitor device health and status\n-----------------------------------------\n\nA DPC running in device owner or profile owner mode can monitor unattended\ndevices running in a remote location, such as digital signage displays or kiosks\nrun off of Android devices. To do this, a DPC uses the\n[`HardwarePropertiesManager`](/reference/android/os/HardwarePropertiesManager) interface to get information about device\nhealth, such as GPU temperatures and CPU usage. This is useful to diagnose\nissues with devices that automatically turn off because of overheating or other\nissues.\n\nTo access the device's Hardware Property Manager service, use\n[`Context.getSystemService()`](/reference/android/content/Context#getSystemService(java.lang.String)) with string\n[`Context.HARDWARE_PROPERTIES_SERVICE`](/reference/android/content/Context#HARDWARE_PROPERTIES_SERVICE).\n| **Note:** Not all properties monitored by [`HardwarePropertiesManager`](/reference/android/os/HardwarePropertiesManager) are available to all Android devices.\n\nRemotely reboot an Android device\n---------------------------------\n\nA DPC can remotely reboot Android devices only when it runs in device owner\nmode. In some cases, devices deployed in public places inside enclosures or as\ndigital signage displays can prevent easy access to the power button. If a\ndevice needs to be rebooted, a DPC can do so using the\n[`DevicePolicyManager.reboot()`](/reference/android/app/admin/DevicePolicyManager#reboot(android.content.ComponentName)) method.\n\nA device doesn't reboot if there's an ongoing call. The device needs to be\nin an idle state to reboot. This is to prevent an admin interrupting a user's\nphone call with a reboot request. If the device is active, it throws an\n`IllegalStateException` until [`CALL_STATE_IDLE`](/reference/android/telephony/TelephonyManager#CALL_STATE_IDLE).\n\nPrevent users sending files over Bluetooth\n------------------------------------------\n\nDevice owners and profile owners can prevent users from sending files over\nBluetooth using [`DISALLOW_BLUETOOTH_SHARING`](/reference/android/os/UserManager#DISALLOW_BLUETOOTH_SHARING). Receiving files isn't\naffected. When set by a device owner, `DISALLOW_BLUETOOTH_SHARING` applies to\nall users on the device.\n\nThis option allows the IT admins to control the behavior of [Quick Share](https://support.google.com/android/answer/9286773)."]]