Сделайте мое приложение для Android полностью в режиме киоска при включении - PullRequest
5 голосов
/ 26 июня 2019

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

1. Сделать мое приложение приложением администратора / владельца устройства (задача блокировки) -

Если мы перейдем по этой ссылке / процедуре https://developer.android.com/work/dpc/dedicated-devices/lock-task-mode, существуют некоторые ограничения:

а. Мы должны сбросить настройки всех устройств, на которых установлено приложение Feedback, выполнить некоторые шаги, чтобы сделать его приложением администратора (приложение запуска).

б. Установка приложения будет возможна с помощью командной строки, каждая установка будет проходить некоторую строку кода через cmd, что означает, что для установки человек должен пойти туда с компьютером и подключить устройство через USB, а затем установить приложение с помощью команд.

с. Обновление приложения также будет следовать той же процедуре (не может быть выполнено с помощью Google Play Store)

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

2. Программно закрепление экрана + программно управление громкостью и кнопкой питания. (https://github.com/mrugacz95/kiosk)

а. В этом случае мы переведем приложение в режим закрепления экрана, где все три нижние кнопки («Обзор», «Дом», «Последние») будут скрыты / отключены. и то же самое с клавишей питания и клавишами громкости.

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

3. Третий случай, когда все клавиши управляются, включая power + voulme + back + обзор и т. Д. Только нажатие кнопки home заставит приложение перейти в фоновый режим, и через несколько секунд оно снова выйдет на передний план.

Так что все, что я нашел до сих пор, не очень удовлетворительно. Еще один вопрос-

Is this something to be fully controlled by MDM(Mobile Device Management)?

Любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 28 июня 2019

1.Сделать мое приложение в качестве устройства администратора / владельца устройства

a.Владелец устройства может быть установлен только на только что инициализированное устройство (до добавления учетной записи).Я считаю, что это сделано специально: владелец устройства может полностью заблокировать устройство, вы не хотите, чтобы вредоносное приложение могло захватить телефон ничего не подозревающего пользователя после нескольких всплывающих окон «Я согласен».

б.Вам не нужно устанавливать его с помощью ADB.Простейший метод обеспечения - через NFC : хотя устройство отображает самый первый экран мастера установки, коснитесь его тегом (или другим устройством), содержащим конфигурацию предоставления, наиболее важным является URL-адрес, по которому apk можетскачайте и настройку WiFi.

Другой способ - через QR-код (Android 7+): 6 раз нажмите первый экран настройки.Это немного менее удобно, чем NFC, потому что вам обычно приходится настраивать WiFi вручную.

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

2.Блокировка задачи / закрепление экрана

Любое приложение может программно войти в режим блокировки задачи .То, как это происходит, зависит от того, занесено ли приложение в белый список приложением владельца устройства (возможно, само по себе):

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

Если да, всплывающее окно отсутствует: пользователь не может отказаться от входа или выхода из режима блокировки задачи.

Дополнительно приложение киоскаможет действовать как пусковая установка.Владелец устройства (опять же, возможно, сам) может установить его без вмешательства пользователя

Это что-то, что должно полностью контролироваться MDM (Mobile Device Management)?

Несмотря на то, что приложения владельца устройства обычно являются DPC, подключенными к консоли MDM, это не является техническим требованием.Как вы контролируете это полностью зависит от вас.(Надеюсь, я правильно понял вопрос)

В целом, я думаю, что единственный надежный способ блокировки устройства в режиме киоска - это использовать приложение владельца устройства (отдельно или в приложении киоска).Настройка через NFC или QR-код на самом деле быстрее , чем обычная настройка устройства.Он также может защитить от перезагрузки безопасного режима или возврата к заводским настройкам.Единственным реальным ограничением является то, что вы не можете развернуть приложение такого типа на существующих устройствах без предварительной их очистки.

1 голос
/ 28 июня 2019

Сделать мое приложение приложением администратора / владельца устройства (задача блокировки) -

а. Если вы делаете его «приложением администратора», это означает, что вы правильно подписали образ устройства? Поэтому вы контролируете полную перепрошивку устройства - в этом сценарии вы можете делать все что угодно.

б. Вы также можете использовать ADB через WiFi после первой установки

с. Вы можете обновить свои приложения из игрового магазина - даже приложения для запуска

д. В этом весь смысл режима киоска. Пользователи никогда не должны иметь возможность выйти из приложения. Только вы можете выйти, либо с помощью удаленной команды, либо с помощью невидимой сенсорной комбинации (например, касаясь каждого из углов экрана по очереди дважды или другой «секретный код разблокировки»)

Программно закрепление экрана + программно управление громкостью и кнопкой питания. (https://github.com/mrugacz95/kiosk)

б. Это противоположность 1d, не ясно, что вы хотите, если вы не хотите ни того, ни другого.

Третий случай, когда все клавиши управляются, включая power + voulme + back + обзор и т. Д.

Это также противоположность 1d, не ясно, что вы хотите, если вы не хотите ни того, ни другого.


Нам понадобятся дополнительные сведения о сценарии развертывания этого приложения, чтобы помочь вам в дальнейшей работе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...