Архив за день: 01.09.2020



Android: Разрешить установку приложений из неизвестных источников

Описание настройки «Unknown sources» такое:

Allow installation of apps from sources other than the Play Store

Если на смартфоне создать нового пользователя с ограниченным доступом, то у данного пользователя будет заблокирована установка приложений не из Play Market (из неизвестных источников). Этот переключатель в Настройках будет в находиться положении «выключен». Через Настройки его нельзя будет изменить.

Некоторые приложения для Андроид можно установить только с помощью специального установщика. Так например apkpure для .xapk или APKCombo для архива с файлами установки. Но в этом случае установщик не сработает, т.к. будет запрещена установка из неизвестных источников.

Можно через adb разрешить установку из неизвестных источников:
1. Включить на устройстве отладку по USB
2. Подключить кабелем к компьютеру
3. Проверить, видится ли устройство, получится примерно так:

adb devices
List of devices attached
832HADTMRHX73   device

4. Узнаём ID второго пользователя (не владельца), с помощью команды adb shell pm list users:

adb shell pm list users
Users:
        UserInfo{0:Владелец:13} running
        UserInfo{12:Vova:18} running
Из этой записи следует, что у пользователя Vova его USER_ID = 12, поэтому ниже мы указываем изменение настроек для него.

 

5. Включаем разрешение установки приложений из неизвестных источников для пользователя с USER_ID=12:

adb shell settings --user 12 put secure install_non_market_apps 1

Теперь можно установить приложение с карты памяти или с помощью приложения типа APKCombo.

*. Кроме этого, установить необходимое приложение для этого пользователя можно таким образом:

adb install --user 12 "D:\Distr-Android\application.apk"

При установке приложения таким образом может появится ошибка:

adb: failed to install brawl-stars-29-258.apk: Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install com.supercell.brawlstars without first uninstalling.]

В этом случае нужно будет запустить установку с ключом -r, например:

adb install -r --user 12 "brawl-stars-29-258.apk"
Опять заблокировать установку приложений из неизвестных источников можно так:

adb shell settings --user 12 put secure install_non_market_apps 0