Search code examples
androidandroid-sourceandroid-launcherkiosk

How do I set the default launcher in an AOSP build?


I am modifying the AOSP source code because my app needs to run in a kiosk environment.

I want Android to boot directly into the app. I've excluded launcher2 from generic_no_telephony.mk, and added the app there. Now Android prompts me all the time to choose default launcher.

The two choices that are available on the pop-up:

  1. Home Sample
  2. My app.

How can I exclude the Android Home Sample Launcher? Or is there another way to set the default launcher in an AOSP build?


Solution

  • Instead of modifying the AOSP make files (which is annoying because then you need to track your changes) it is easier to add a LOCAL_OVERRIDES_PACKAGES line to your app's make file.

    For instance:

    LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3
    

    added to your Android.mk file will ensure that those packages are not added to any build where this package is added.

    Following that, you should do a

    make installclean
    

    and then start your build the same way you always make your build. The make installclean is important to remove the packages that are left behind by the previous build.

    I also just found a nice answer to how to do this in another question, see: How would I make an embedded Android OS with just one app?