Что делает `adb shell dpm set-device-owner`?

Поэтому я много думал о том, как сэкономить заряд батареи на моем Samsung Galaxy S8+ (не то чтобы это было плохо), поэтому я пробовал и просматривал множество разных приложений. Среди них Greenify, Island , Tasker+Package disabler и Ice Box . И особенно Ice Box привлек мое внимание.

Но есть что-то в том, как устроен Ice Box, чего я не понимаю. Если устройство не рутировано (а у меня нет), вам нужно запустить в ADB следующее, чтобы оно заработало: adb shell dpm set-device-owner com.catchingnow.icebox/.receiver.DPMReceiver.

Я не очень разбираюсь в командах оболочки, но, насколько я понимаю, это установит приложение в качестве администратора/владельца устройства (есть ли разница?)? Но эта команда по какой-то причине также требует, чтобы вы удалили все учетные записи при запуске, иначе она не будет работать. - НО Приложения, такие как Island, также требуют администратора устройства? а что можно выставить прямо на аппарате без ADB?

В чем разница и что именно делает эта команда оболочки?

Ответы (1)

Google отметил здесь :

Владелец устройства — это особый тип администратора устройства , у которого есть дополнительные возможности создавать и удалять дополнительных пользователей, а также настраивать глобальные параметры устройства. [Его можно использовать] для точного управления конфигурацией, безопасностью и приложениями на управляемых устройствах. У устройства может быть только один активный владелец одновременно .

(выделено мной)

Итак, теперь вы знаете, почему все другие учетные записи должны быть удалены для Ice Box, но не для других приложений. Вы можете добавить эти учетные записи позже, сделав это приложение владельцем устройства.

Кроме того, если память не изменяет, после того, как вы установите приложение в качестве владельца устройства, я не думаю, что вы сможете удалить это приложение. Вам придется сбросить устройство до заводских настроек или использовать root-доступ, чтобы стереть его.

Хорошо, спасибо! :) Но это "все" делает команда? Что такое приемник DPM?
Это .receiver.DPMreceiverкомпонент приложения IceBox. Я недостаточно знаю о функционировании приемника администратора устройства, поэтому это все, что я могу дать.