Что такое администрирование устройства. Использование политик администрирования в Android

Михаил Варакин
преподаватель Центра компьютерного обучения «Специалист»
при МГТУ им. Н.Э. Баумана

По мере увеличения занимаемой доли рынка мобильных устройств платформа Android становится все более привлекательной для разработчиков корпоративных приложений. При этом для корпоративной среды характерна потребность в соблюдении политик, обеспечивающих необходимый уровень безопасности информационных систем. В Android API 8 (Android 2.2) впервые появилась поддержка корпоративных приложений с помощью Device Administration API, обеспечивающего возможность администрирования устройств на платформе Android на системном уровне. Данный API дает возможность разработчикам создавать приложения, необходимые в корпоративной среде, где администраторам ИС предприятия требуется контроль над мобильными устройствами персонала. Одно из таких приложений уже имеется на всех современных устройствах: встроенный почтовый клиент использует Device Administration API при синхронизации с Microsoft Exchange и посредством этого приложения администраторы Exchange могут обеспечивать соблюдение требований политик работы с паролями, а также удаленно стирать данные (делать сброс к заводским установкам) в случае потери или кражи устройства.

Организационные аспекты использования

Приложение, использующее Device Administration API, может быть установлено на устройство любым способом, как через Google Play, так и из других источников. Факт наличия установленного приложения еще не обеспечивает соблюдения политик, для которого оно было создано – от пользователя требуется согласие на применение политик администрирования. В случае отказа приложение останется в системе и будет находиться в неактивном состоянии. Как правило, согласие пользователя на использование политик предоставляет ему полезные возможности, например, доступ к конфиденциальной информации, недоступной в случае отказа. При несоблюдении пользователем действующих политик (например, при использовании недостаточно стойкого пароля), реакция приложения определяется тем, что посчитал нужным реализовать разработчик; обычно пользователь теряет возможность использования корпоративных сервисов. При использовании механизма администрирования в корпоративных средах следует иметь в виду следующие особенности:

  • при попытке соединения с сервисом, требующим соблюдения определенного набора политик, не все из которых поддерживаются мобильным устройством (например, из-за устаревшей версии Android), соединение не будет устанавливаться;
  • если на устройстве активированы несколько приложений, использующих Device Administration API, применяются наиболее строгие ограничения, накладываемые политиками администрирования, использующимися в данных приложениях;
  • кроме разнообразных ограничений, касающихся паролей (сложность, период устаревания, количество попыток ввода), максимального времени неактивности перед блокировкой экрана, требований к шифрованию носителей и запрета использования камеры, в настоящий момент Device Administration API предоставляет дополнительные возможности: требование смены пароля, немедленная блокировка экрана и сброс к заводским установкам (с возможностью очистки внешнего накопителя – SD-карты);
  • опасения пользователей относительно возможностей доступа администраторов компании к личным данным и переписке, паролям владельцев устройств в социальных сетях и т. п. совершенно безосновательны: Device Administration API таких возможностей не предоставляет.

Как это работает

В настоящий момент Device Administration API содержит три класса, являющихся основой для полнофункциональных приложений администрирования устройств:

  • DeviceAdminReceiver : базовый класс для классов, реализующих политики администрирования; callback-методы этого класса предоставляют удобные средства для описания реакций на те или иные события, связанные с политиками – индивидуальные «приемники сообщений» для разных событий;
  • DevicePolicyManager : класс для управления политиками, применяющимися на устройстве;
  • DeviceAdminInfo : класс, использующийся для описания метаданных.

Основная логика приложения реализуется в классе, расширяющем класс DeviceAdminReceiver, являющемся наследником класса BroadcastReceiver. Здесь важно помнить, что callback-методы нашего класса исполняются в главном потоке приложения (UI thread), так что выполнение длительных операций в них недопустимо из-за опасности блокировки интерфейса пользователя. Все необходимые «долгоиграющие» действия должны выполняться в другом потоке (или даже в отдельном сервисе). Как и обычный BroadcastReceiver, наш класс должен быть описан в манифесте приложения:

. . .
android:name=".MyDeviceAdminReceiver"
android:permission="android.permission.BIND_DEVICE_ADMIN"
android:name="android.app.device_admin"
android:resource="@xml/device_admin_data" />


android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>


. . .

Как видно на примере, наш приемник будет принимать сообщения с action, равным ACTION_DEVICE_ADMIN_ENABLED. Для того, чтобы такие сообщения нам могла посылать только система, требуем наличия полномочий BIND_DEVICE_ADMIN (эти полномочия не предоставляются приложениям). Элемент meta-data содержит указание на ресурс, содержащий поддерживаемые приложением политики. В нашем случае путь к XML-файлу такой: res/xml/device_admin_data. Примерное содержимое файла показано ниже:










Дочерние элементы в uses-policies описывают типы политик, использующихся в приложении. Полный список возможных политик можно найти в константах класса DeviceAdminInfo, в том числе на сайте developer.android.com: http://developer.android.com/reference/android/app/admin/DeviceAdminInfo.html .

Рассмотрим примерную реализацию компонента администрирования:

public class MyDeviceAdminReceiver extends DeviceAdminReceiver {

@Override
public void onDisabled(Context context, Intent intent) {
super.onDisabled(context, intent);
// Вызывается перед тем, как данное приложение перестанет
// быть администратором устройства (будет отключено
// пользователем).
}

@Override
public void onEnabled(Context context, Intent intent) {

// Вызывается, когда пользователь разрешил использовать
// этот приложение как администратор устройства.
// Здесь можно использовать DevicePolicyManager
// для установки политик администрирования.
}

@Override
public void onPasswordChanged(Context context, Intent intent) {
super.onPasswordChanged(context, intent);
// Вызывается после смены пароля пользователем.
// Соответствует ли новый пароль политикам,
// можно узнать с помощью метода
// DevicePolicyManager.isActivePasswordSufficient()
}

@Override
public void onPasswordExpiring(Context context, Intent intent) {
super.onPasswordExpiring(context, intent);
// Вызывается несколько раз при приближении времени
// устаревания пароля: при включении устройства, раз в день
// перед устареванием пароля и в момент устаревания пароля.
// Если пароль не был изменен после устаревания, метод
// вызывается раз в день
}

@Override
public void onPasswordFailed(Context context, Intent intent) {
super.onPasswordFailed(context, intent);
// Вызывается в случае ввода неправильного пароля.
// Количество неудачных попыток ввода пароля можно узнать
// с помощью метода getCurrentFailedPasswordAttempts()
// класса DevicePolicyManager.
}
. . .
}

Для управления политиками в приложении требуется получить ссылку на менеджер управления политиками (обратите внимание, что context передается показанным выше методам в качестве параметра):

DevicePolicyManager dpm = (DevicePolicyManager) context

В дальнейшем этот менеджер будет использоваться для установки политик. Метод onEnabled(), устанавливающий требуемое качество пароля мог бы выглядеть примерно так:

@Override
public void onEnabled(Context context, Intent intent) {
super.onEnabled(context, intent);
DevicePolicyManager dpm = (DevicePolicyManager) context
.getSystemService(Context.DEVICE_POLICY_SERVICE);
ComponentName cn = new ComponentName (context, getClass ()

dpm.setPasswordQuality (cn, DevicePolicyManager.
PASSWORD_QUALITY_NUMERIC);

Установки других параметров пароля делаются с помощью соответствующих методов DevicePolicyManager:

dpm.setPasswordMinimumLength(cn, 32);
dpm.setPasswordHistoryLength(cn, 10);
dpm.setPasswordExpirationTimeout(cn, 864000000L);

Помимо установки политик, DevicePolicyManager позволяет совершать и другие операции (разумеется, не в методе onEnabled()):

  • моментальная блокировка экрана:
    dpm.lockNow();
  • сброс к заводским установкам с очисткой SD-карты:
    dpm.wipeData(DevicePolicyManager.WIPE_EXTERNAL_STORAGE);
  • блокировка камеры:
    dpm.setCameraDisabled(cn, true);

Дополнительная информация

Развернутый работающий пример приложения можно найти в комплекте поставки Android SDK (<путь-к-SDK>/samples/android-<версия-API/ApiDemos/).

На сайте developer.android.com есть статьи по данной теме в разделах Training: http://developer.android.com/training/enterprise/device-management-policy.html и API Guides: http://developer.android.com/guide/topics/admin/device-admin.html .

Описания классов пакета android.app.admin на этом же сайте: http://developer.android.com/guide/topics/admin/device-admin.html .

Научиться разработке мобильных приложений под Android Вы сможете в .

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

Как удалить предустановленное приложение с телефона?

Для того чтобы ликвидировать стандартные разработки со смартфона, необходимо обладать Root правом (право администратора). Без него невозможно деинсталлировать ни один предустановленный софт — можно только отключить, но в памяти оно все равно останется. Получить права администратора необходимо при помощи специальных программных продуктов.

Способ №1 — “KingRoot”

Можно воспользоваться “KingRoot”. Для того чтобы получить права суперпользователя, необходимо произвести такие действия:

  • Скачать и установить “KingRoot”. Она автоматически определит модель используемого устройства, а также наличие права администратора.
  • Нажимаем на Try to root и ожидаем завершения процесса.

Важно! После завершения процесса устройство может перезагрузиться. Это вполне нормально.

  • Теперь пользователь обладает правом администратора и может деинсталлировать предустановленный софт.

Важно! Перед деинсталлированием бесполезного софта необходимо произвести бэкап (резервное копирование) всех данных, используя популярную разработку “Titanium Backup”. Данная процедура спасет от множества неприятностей в случае удаления системных разработок, которые запрещено трогать.

“KingRoot” позволяет не только получить права администратора, но и деинсталлировать любой сторонний софт. Помимо этого, он имеет еще ряд полезных функций.

Как удалить ненужные приложения на андроиде с помощью “KingRoot”:

  • Запустить “KingRoot”.
  • В главном меню перейти к пункту “Удаление программ”.
  • Перейти на вкладку “Встроенные”, которая отвечает за предустановленный софт.

Важно! На вкладке “Пользовательские” расположенный весь софт, который был установлен пользователем устройства.

  • Необходимо определить все лишние программные продукты и отметить их галочкой.
  • Тапнуть на кнопку “Удалить”.

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

Способ №2 — “Root Explorer”

Данный способ подразумевает установку и использование любого стороннего проводника. Воспользуемся наиболее популярной разработкой “Root Explorer”. Как удалить стандартные приложения на андроиде с помощью “Root Explorer”:

  1. Скачать “Root Explorer” в “Play Market”, установить и запустить его.
  2. Зайти в папку /system/app, в которой хранятся все установленные программные продукты.
  3. Определить бесполезные разработки, отметить их галочкой.
  4. Тапнуть на значок корзины в нижней строке.
  5. Подтвердить удаление, дождаться завершения процесса.

Способ №3 — “Titanium Backup”

Для деинсталляции предустановленного софта можно также воспользоваться разработкой “Titanium Backup”. Она обладает огромной функциональностью, и помимо резервного копирования данных, позволяет ликвидировать бесполезный софт.

Как удалить ненужные программы на андроиде с помощью “Titanium Backup”:

  • Скачать “Titanium Backup” в “Play Market”, установить его и запустить.

Важно! Если после запуска появилось сообщение о системной конфигурации, то нужно последовать инструкции, перейти по заданному пути и отключить “Отладку по USB”.

  • В главном меню перейти на вкладку “Резервные копии”.
  • Определить лишний софт и нажать на него.
  • В появившемся меню тапнуть на кнопку “Удалить”.
  • Подтвердить деинсталляцию, дождаться завершения процесса.

Способ №4 — “ES Проводник”

Очень часто “ES Проводник” уже установлен на андроиде, поэтому не нужно скачивать какие-либо дополнительные специальные разработки. Для того чтобы ликвидировать бесполезный софт с помощью “ES Проводник”, необходимо произвести такие действия:

  1. Запустить “ES Проводник”. Если же оно заранее не установлено, то его нужно скачать в “Play Market”.
  2. В верхнем правом углу тапнуть на кнопку “APPs”.
  3. В появившемся окне перейти в пункт “Установленные в устройство”.
  4. В верхнем левом углу тапнуть на кнопку “меню”.
  5. Активировать пункт “Root-проводник”, сдвинув ползунок вправо.
  6. В появившемся запросе на получение права администратора необходимо нажать на “разрешить”.
  7. Вернуться к списку предустановленного софта, отметить лишний.
  8. В появившемся окне тапнуть на кнопку “Деинсталляция” и подтвердить действие.
  9. Дождаться сообщения об успешном завершении деинсталляции.

Процесс завершен!

Способ №5 — “Root App Deleter”

В процессе ликвидации предустановленного софта поможет специальная разработка “Root App Deleter”. Как удалить на смартфоне ненужные программы:

  • Скачать, установить и запустить “Root App Deleter”.
  • Перейти к пункту “Системные приложения”.
  • Выбрать режим “Профи”.
  • В открывшемся списке нажать на бесполезный программный продукт.
  • В появившемся окне тапнуть на кнопку “Деинсталляция”.
  • Разрешить предоставление права администратора.
  • Подтвердить деинсталляцию.

Важно! В случае успешного процесса появится сообщение об этом. Если же во время деинсталляции произошла ошибка, то система оповестит об этом и даст выбор: принудительно удалить или отменить данный процесс. Выбираем принудительное удаление и нажимаем на “№1”.

  • Невостребованный софт деинсталлирован из внутренней памяти смартфона.

Способ №6 — “Root Uninstaller Pro”

Помочь в ликвидации предустановленного софта может разработка “Root Uninstaller Pro”. Для того чтобы совершить процесс деинсталляции бесполезного софта, необходимо произвести такие действия:

  1. Скачать, установить и запустить “Root Uninstaller Pro”.
  2. Тапнуть на кнопку “Accept” и подтвердить лицензионное соглашение.
  3. В открывшемся списке определить невостребованный софт и нажать на него.
  4. В появившемся окне разрешить предоставление права администратора.
  5. Тапнуть на кнопку “Удалить”.
  6. Дождаться сообщения об успешной деинсталляции.

Важно! Специальная разработка «Root Uninstaller Pro» перед процессом деинсталляции программного продукта предложить сделать резервное копирование. Это в дальнейшем поможет устранить возникшие проблемы, если вдруг эта программа окажется системной и повлияет на функциональность смартфона.

Способ №7 — “Удаление системных приложений”

Для ликвидации стороннего софта можно также воспользоваться специальной разработкой “Удаление системных приложений”. Как удалить приложение с андроида, если оно не удаляется:

  1. Скачать, установить и запустить “Удаление системных приложений”.
  2. После запуска предоставить права администратора данной специальной разработке.
  3. В открывшемся списке определить бесполезный софт и отметить галочкой.
  4. Тапнуть на красную кнопку “Удалить”.

Способ №8 — “Easy Uninstaller Pro”

Для того чтобы деинсталлировать предустановленный софт с помощью “Easy Uninstaller Pro”, необходимо произвести такие действия:

  1. Скачать, установить и запустить “Easy Uninstaller Pro”.
  2. В возникшем списке найти невостребованный софт и отметить галочкой.
  3. Тапнуть на зеленую кнопку “Удалить”.
  4. Дождаться сообщения об успешном завершении процесса.

Важно! Специальная разработка “Easy Uninstaller Pro” даже не требует права администратора, что значительно упрощает процесс деинсталляции.

Способ №9 — “CCleaner”

Помочь с деинсталляцией предустановленного софта может популярная и хорошо известная программная разработка по очистке устройства “CCleaner”. Как удалить приложение с андроида, если оно не удаляется:

  1. Скачать, установить и запустить “CCleaner”.
  2. В левом верхнем углу дисплея нажать на кнопку и выбрать “Менеджер приложений”.
  3. Перейти на вкладку “Системные”.
  4. В открывшемся списке детерминировать бесполезный программный продукт и отметить галочкой.
  5. Тапнуть на кнопку “Удалить”.
  6. Разрешить разработке доступ к правам администратора.
  7. После запуска смартфона процесс деинсталляции завершен.

Способ №10 — “Debloater”

Для ликвидации стороннего софта с андроида можно воспользоваться компьютером. Для данного процесса подойдет специальная разработка “Debloater”.

Важно! “Debloater” совместимо только с андроид-устройствами с операционной системой 4.0 и выше. Именно поэтому для более старых версий такой вариант деинсталляции абсолютно не подойдет.

Как удалить ненужное приложение на андроиде с помощью ПК:

  • Скачать, установить “Debloater” на ПК и запустить его.
  • Скачать и установить ADB драйвера для своей модели смартфона на ПК. Это необходимо для того, чтобы компьютер смог распознать устройство.

Важно! Обычно все необходимые драйвера устанавливаются автоматически после подключения андроид-устройства к ПК.

  • Зайти в настройки андроида и перейти на вкладку “Для разработчиков”.
  • Включить отладку по USB.
  • Запустить на смартфоне программу “KingRoot”.
  • Тапнуть на кнопку “Управление Root правами”.
  • Напротив “Программа ADB” нажать на кнопку “Запрос”.
  • В появившейся строке тапнуть на “Разрешить”.
  • Перейти к “Debloater” на ПК. Данная программа должна была успешно распознать смартфон.
  • В левом верхнем углу нажать на кнопку “Read Device Packages” и дождаться завершения процесса.
  • В открытом окне появится список всех установленных программных продуктов. Отмечаем галочкой невостребованный софт.
  • Отметить галочкой пункт “Remove” и нажать на кнопку “Apply”.

Готово, сторонний софт ликвидировано с андроид-устройства!

Важно! Данный способ наиболее сложный, поэтому пользоваться им нужно, только если все предыдущие не помогли.

Как удалить установленные приложения?

Со временем в памяти андроид-устройства накапливается очень много лишнего софта. Это значительно замедляет работоспособность устройства, расходует заряд аккумулятора. Причем, данные свойства проявляются даже тогда, когда программный комплекс не запущено. Именно поэтому лишние программы необходимо постоянно деинсталлировать.

Удаление через главное меню

Наиболее простым методом ликвидации бесполезного софта является удаление через главное меню. Как удалить ненужное приложение на андроиде:

  1. Зайти в главное меню смартфона.
  2. Найти ярлык ненужного программного продукта, зажать его пальцем на несколько секунд.
  3. После данной процедуры вверху дисплея должно отобразиться небольшое меню, где будет присутствовать пункт “Удалить” со значком корзины.
  4. Не отпуская пальца с ярлыка, перенести его на данный пункт и отпустить.
  5. Подтвердить деинсталляцию специальной разработки и дождаться успешного завершения данного процесса.

Важно! После ликвидации какой-либо программы необходимо воспользоваться специальным софтом для осуществления очистки операционной системы андроид, поскольку в результате деинсталляции в памяти все еще остается множество лишних файлов. Наиболее популярной является программа “Clean Master”.

Удаление через диспетчер приложений

Для ликвидации стороннего софта можно воспользоваться диспетчером приложений. Для этого необходимо произвести такие действия:

  1. Открыть главное меню и перейти в “Настройки”.
  2. Выбрать “Диспетчер приложений”.
  3. Перейти на вкладку “Загружено”, поскольку в ней отображаются все установленные программные продукты.
  4. Определить не востребованную программную разработку и нажать на нее.
  5. Нажать на кнопку “Удалить”.
  6. Готово, бесполезный софт деинсталлировано.

Важно! Если необходимо освободить внутреннюю память андроид-устройства, но не стирать специальные разработки, то его можно просто переместить на карту памяти. Для этого вместо пункта “Удалить” необходимо нажать на кнопку “На карту памяти SD”.

Удаление через PlayMarket

Помимо главного меню, ликвидировать невостребованный софт можно и через магазин приложений. “PlayMarket” предоставляет возможность не только скачивания и установки, но и деинсталляции программ.

Как удалить ненужное приложение на андроиде:

  1. Запустить “PlayMarket” и дождаться его загрузки.
  2. Перейти в раздел “Игры и приложения”.
  3. Выбрать “Мои приложения и игры”. Именно здесь находится список всех установленных программ на данном андроид-устройстве.
  4. Найти бесполезный софт и нажать на кнопку “Удалить”.
  5. Подтвердить деинсталляцию и дождаться успешного завершения процесса.

Удаление через файловый менеджер

Ликвидировать невостребованный софт можно также с помощью файлового менеджера. Стандартной программой является “ES Проводник”. Именно он предустановленный на большинстве смартфонах. Для того чтобы избавиться от стороннего софта, необходимо произвести такие действия:

  • Открыть файловый менеджер и сделать свайп вправо.
  • Перейти к разделу “Средства”.
  • Нажать на пункт “Root-проводник”.
  • Предоставить права Суперпользователя.
  • Зажать палец на пункте “Root-проводник” для того, чтобы настроить возможность по редактированию разделов и файлов.
  • В открывшемся меню выбрать пункт “Подключить как R/W” и установить все галочки в графе “RW”.
  • Зайти во внутреннюю память и перейти в папку “/system/app”.
  • Отметить файл бесполезного программного продукта с расширением.apk.
  • Из появившегося контекстного меню выбрать пункт “Удалить”.
  • Кроме.apk файла необходимо также ликвидировать файл с таким же именем и расширением.ordex, если такой есть.

Важно! В операционной системе андроид 5.0 и выше все установленные системные разработки разделены по отдельным папкам. Именно поэтому нужно выделять и удалять целую папку.

Теперь вы знаете все о том, как можно удалить ненужные и стандартные приложения на андроиде. Содержите свой смартфон в чистоте, и тогда вам не придется больше сталкиваться с его тормозами и некорректной работой.

Приложений в операционной системе Android — очень простой процесс, несколько касаний на экране и все готово. Однако встречаются приложения, которые отказываются удаляться. Такое ситуация возникает из-за того, что некоторые приложения устанавливаются в качестве администратора устройства, а другие уже установлены (предустановленные) производителем устройства и у пользователя нет прав на их удаление.

Для полного удаления предустановленных приложений потребуются root права. Если вы не хотите рутовать устройство, то можно попробовать отключить предустановленные программы, чтобы они не запускались вместе с Android и не занимали место в оперативной памяти. Итак, как удалить неудаляемые приложения.

Приложения администраторы устройства требуют больше прав для своего полноценного функционирования. Здесь не нужно путать с приложениями, требующими , просто программам администраторам нужно больше полномочий в рамках существующих прав пользователя. Например, для установки защиты или дистанционной блокировки смартфона, отслеживание его по GPS и т.п.

Если установленное вами приложение не удаляется, то зайдите в настройки андроид устройства, перейдите в раздел «Безопасность » и далее в «Администраторы устройства », в котором снимите отметку с удаляемой программы, что она является администратором.

После этого приложение беспрепятственно удалится.

Удаление или отключение предустановленных приложений

Есть производители, которые злоупотребляют установкой своих программ, которые невозможно удалить. Удалить их можно, как говорилось выше, только получив root-права на устройстве. Но что делать, если нет желания этого делать или смартфон/планшет находится на гарантии и его рут служит основанием для снятия гарантийных обязательств? В этом случае можно попробовать остановить предустановленные приложения. Для этого сделайте следующее:

Отключенные предустановленные приложения должны исчезнуть из меню и больше не будут запускаться вместе с Android, а также занимать оперативную память, что в бюджетных смартфонах будет большим плюсом, где ее всегда дефицит.