Постоянное приложение отключено при сбросе настроек - PullRequest
0 голосов
/ 01 апреля 2019

Я проводил некоторые эксперименты с Android, чтобы заблокировать телефон ребенка. В идеале я хотел бы, чтобы он мог использовать только приложения, которые были предварительно установлены на телефоне; он тратит слишком много времени на игры по телефону. Я обнаружил, что могу отключить Google Play Store на телефоне (после рута), введя команду pm disable com.android.vending.

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

Мне удалось собрать и запустить AOSP на телефоне и установить необходимые Gapps для Google Fi (наш оператор) и другие базовые функции, но я хочу, чтобы мой окончательный образ Android по умолчанию был com.android.vending отключен по умолчанию, если явно не включен повторно после, скажем, сброса к заводским настройкам.

Теперь мои знания об Android несколько ограничены, но из того, что я обнаружил в некоторых источниках pm, я могу сказать, что состояние по умолчанию включено / отключено указано в файле AndroidManifest.xml в пакете APK. Поскольку я пытаюсь отключить приложение Google, я, вероятно, не смогу изменить это.

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

Можно ли как-нибудь отключить com.vending.android в корне системы по умолчанию при сборке AOSP?

Обновление 1 : Похоже, что статус отключенного приложения зависит от пользователя. Таким образом, отключение приложения для одного пользователя не отключается для любых других. Но, безусловно, где-то есть файл глобальных настроек, который наследует пользовательская конфигурация ...?

Обновление 2 : похоже, pm работает с состоянием в памяти, которое не сохраняется (по крайней мере, для системных приложений) даже после перезагрузки.

1 Ответ

0 голосов
/ 01 апреля 2019

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

...