Как установить пусковую установку по умолчанию в сборку AOSP?

Я изменяю исходный код AOSP, потому что мое приложение должно запускаться в среде киоска.

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

Два варианта, доступные во всплывающем меню:

  • Главная страница
  • Мое приложение.

Как я могу исключить программу запуска Android Home Home? Или есть другой способ установить пусковую установку по умолчанию в сборке AOSP?

Ответ 1

Вместо того, чтобы изменять файлы AOSP make (что раздражает, потому что тогда вам нужно отслеживать ваши изменения), проще добавить строку LOCAL_OVERRIDES_PACKAGES в файл приложения.

Например:

LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3

добавленный в ваш файл Android.mk, гарантирует, что эти пакеты не будут добавлены в какую-либо сборку, где будет добавлен этот пакет.

После этого вы должны сделать

make installclean

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

Я также нашел хороший ответ на то, как это сделать в другом вопросе, см.: Как сделать встроенную ОС Android только одним приложением?

Ответ 2

Вышеприведенный ответ верен. LOCAL_OVERRIDES_PACKAGES работает. Но обратиться к одному из комментариев; Я должен был сделать LOCAL_OVERRIDES_PACKAGES: = Главная Launcher2 Launcher3

Главная - это пример Домашнего приложения, которое служит в качестве Launcher, если Lancher2 также недоступен.

Только после удаления этих 3 пусковых установок; я мог видеть, что мой запуск запуска запуска по умолчанию без какого-либо диалогового окна с просьбой выбрать.

(моя тестовая ОС - Android N, ymmv)