I have an android device (Android 4.4) with two launchers. One comes with the device and the other one is home made. I have the following questions regarding this scenario:

  1. How can I set the default launcher via ADB? (same as selecting one and pressing Always)
  2. How can I clear the default launcher selection via ADB? (same as entering to Default Applications and clearing Defaults)

Please do not submit answers or comments that do not consider the use of ADB. I'm not interested in any of those.

Also, I already know about disabling one of the launchers via ADB (pm disable app_package_name) and then re-enabling it, but this is not the same as setting the default launcher or setting the preferred activity. You can see the difference in the next image:

enter image description here

  • 2
    Is the use of Key Events permitted? Also, setting for default apps is stored inside /data/system/users/USERID/package-restrictions.xml. Users can't write it without root access.
    – Firelord
    Apr 20 '16 at 14:17
  • @Firelord No, it is not permitted the use of Key Events. Still +1 for the idea, maybe for the future. Regarding the /data/system/users/USERID/package-restrictions.xml file, that is exactly what running pm disable app_package_name and then pm enable app_package_name does.
    – Storo
    Jun 3 '16 at 16:10

It is not necessary to uninstall the default launcher, you must know it's package name before of doing so, which if you don't know you must get with adb shell cmd shortcut get-default-launcher.

In order to set your launcher as default you just have to call the following

adb shell cmd package set-home-activity "your.package/.YourLauncherActivity"

you can remove (Uninstall) the default program you set using ADB by doing this :

adb uninstall app.package  ..... //for example (com.example.homeapp)

If you don't want to remove the app .. here is a quick hack to do it:

  • adb shell
  • am start -a android.intent.action.MAIN

That way you will have a picker with all apps on your devices that listens to Main Action

  • Choose any home screen app you want . then go to settings and set it as default.

Copied from this answer

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.