14

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

Storo
  • 303
  • 2
  • 8
  • 22

3 Answers3

6

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"
Cliff Burton
  • 163
  • 1
  • 6
2

I know this is not the answer of the asked question, anyways this may helps someone regarding setting default app links (deep-links):

Android 12+ (since API 31)

adb shell pm set-app-links --package [PACKAGE_NAME] 1 [URL_HOST]

e.g. adb shell pm set-app-links --package com.company.myapp 1 myapp.company.com

Android 11- (API 30 and below)

adb shell pm set-app-link [PACKAGE_NAME] always
User Rebo
  • 121
  • 3
1

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

Deepak Gangwar
  • 723
  • 4
  • 16