2013-03-17 4 views
2

Я разрабатываю приложение для удаленного управления для Android. Я хочу, чтобы иметь возможность блокировать/разблокировать экран.Android-приложение

Для этого есть два способа:

  • Создание приложения администратор устройства.
  • Использование PowerManager.goToSleep(), для которого требуется разрешение DEVICE_POWER, , которое является системным разрешением.

Поэтому eclipse сообщает мне, что «это разрешение предоставляется только системным приложениям». Мне действительно нужно это и некоторые другие системные разрешения в моем приложении, так как это приложение с дистанционным управлением, которое должно иметь возможность управлять функциями системы.

support page От:

Загрузка Системные приложения

Большинство разработчиков не нужно загружать системные приложения могут игнорировать этот раздел. Системные приложения могут быть предварительно установлены на определенных устройствах и могут быть опубликованы или не опубликованы в магазине Play. Если вам необходимо загрузить системное приложение и при появлении сообщения об ошибке, пожалуйста, свяжитесь с нами. Обязательно выберите вариант Публикация и вариант распространения.

Если я понимаю это правильно, можно сделать системное приложение. как?

ответ

2

Я занимаюсь разработкой приложений дистанционного управления для Android

К счастью, это не возможно, за исключением, возможно, если вы работаете как корень, или скачать исходный код Android, изменить его, и переверните его в свой собственный мод ROM.

Если я понимаю это правильно, можно сделать системное приложение. как?

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

Это, конечно же, ограничит распространение вашего приложения на устройства, работающие на вашем модемом ROM.

0

Многие «системные» разрешения действительно являются SIGNATURE_OR_SYSTEM разрешениями. Для этого вам необходимо выполнить одно из следующих действий:

  1. После создания APK установите его как системное приложение.
  2. Подпишите приложение с тем же ключом, что и дистрибутив Android на вашем устройстве.

Для первого варианта вам необходимо быть root на вашем устройстве. Обычные APK находятся в /data/app, тогда как системные APK необходимо поместить в другую папку (на Android 6 и 7 это /system/priv-app, более ранние версии могут отличаться).Тем не менее, это не очень подходит для приложения, которое будет распространяться среди конечных пользователей, особенно если ваша целевая аудитория не очень технологична.

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