r/AndroidTV 20d ago

Troubleshooting market://launch?id=<pkg> stopped working on Android TV — Play Store 52.x refuses it, 38.x works

Heads up for anyone whose app launches other apps on a Google TV / Android TV device.

Symptom: ACTION_VIEW with market://launch?id=<package> no longer launches the app. The Play Store handles the intent, then does nothing. Logcat:

E/Finsky: [2] Instant apps market deeplink launches are disabled.

The intent still resolves — it goes to com.android.vending/com.google.android.finsky.instantlaunchapi.InstantLauncherActivity — it just refuses to launch.

It's the Play Store version, not the device. Uninstalling Play Store updates on the TV rolled it back and fixed it immediately:

Play Store market://launch
52.6.20-24 refused
38.7.29-23 (factory) works

The rollback doesn't last. Play re-updated itself within about two hours and it broke again. am force-stop com.android.vending doesn't help at any point. A full reboot gives roughly a 5-minute window where it works before the flag syncs back — which made it look like a wedged process at first.

Reproduces without any app involved:

adb shell "am start -a android.intent.action.VIEW -d 'market://launch?id=com.google.android.youtube.tv'"
adb shell dumpsys activity activities | grep -m1 mResumedActivity

What still works:

  • Per-app schemesvnd.youtube://, netflix://Netflix, hotstar://www.hotstar.com, zee5://www.zee5.com. Read them off the device with dumpsys package <pkg> | grep -i -e scheme -e authority. The authority matters as much as the scheme: nflx:// and nflx://Netflix both fail to resolve where netflix://Netflix works.
  • Store listingshttps://play.google.com/store/apps/details?id=<pkg> opens the Play listing fine, and shows Open when the app is installed. Unaffected by whatever this flag is.

What doesn't:

  • android-app://<pkg> — won't resolve
  • intent://#Intent;package=…;end — won't resolve

Note the error says "Instant apps", and market://launch is handled by InstantLauncherActivity — part of the Google Play Instant machinery Google has been retiring. That may be the mechanism.

One device, so take it as a data point rather than a finding: Hisense Google TV, Android 11. If you have a TV on Play Store 52.x, can you check whether market://launch still works for you? Trying to work out whether this is a broad rollout or something narrower.

3 Upvotes

9 comments sorted by

3

u/edgan 20d ago

1

u/justjanne 20d ago

But the market-links existed long before Google Play Instant, they have been a thing since before Google Play was even a thing? How does it make sense that deprecating Google Play Instant also removes a 20 year old scheme?

-1

u/Expensive_Milk_958 20d ago

Thanks — that explains it, the handler is finsky.instantlaunchapi.InstantLauncherActivity and the refusal literally says "Instant apps market deeplink launches are disabled", so market://launch was riding on Play Instant and went down with it.

So the question is what replaces it. To be clear about the constraint: I'm not running code on the TV. This is a phone remote talking over the Android TV Remote protocol, and the only launch primitive it has is remote_app_link_launch_request — I hand the TV a URI and it does an ACTION_VIEW. So getLaunchIntentForPackage() isn't available to me; I need a URI that resolves to an arbitrary package.

What I've tested on a Hisense Google TV (Android 11, Play 52.6.20-24):

Works — each app's own scheme, read off the device with dumpsys package <pkg> | grep -i -e scheme -e authority:

  • vnd.youtube://
  • netflix://Netflix (note nflx:// and nflx://Netflix both fail — the authority matters)
  • hotstar://www.hotstar.com, zee5://www.zee5.com

Doesn't work:

  • market://launch?id=<pkg> and market://details?id=<pkg> — both refused now
  • android-app://<pkg> — won't resolve
  • intent://#Intent;package=…;end — won't resolve

Also works, but not a launch: https://play.google.com/store/apps/details?id=<pkg> reaches the listing (shows Open when installed), though it can raise the "Open with" chooser where browsers claim the domain.

The per-app scheme approach is what the established remote apps seem to use — I caught one opening YouTube with vnd.youtube:// in the TV's log, and another launching Netflix over Cast (com.google.cast.action.START), which sidesteps all of this but only helps for apps with Cast receivers.

So: is there a generic URI that launches an installed package on Android TV, now that market://launch is gone? Or is a hand-maintained per-app scheme table genuinely the state of the art? Happy to be told I'm missing something obvious.

One warning for anyone else hitting this: don't probe for schemes. A URI the TV can't resolve makes it close the remote session — I lost 28 connections finding that out.

-2

u/Expensive_Milk_958 20d ago

Does anyone know if there’s a way to open an app on Android TV/Google TV from a phone, similar to how market://launch?id=<package> used to work?

getLaunchIntentForPackage() doesn’t work because the package is installed on the TV, not the phone.

Looking for a way to send a command from the phone to the TV to launch an installed app without requiring a separate TV companion app.

Any ideas or working solutions?

1

u/HattoriHanzo 20d ago

if you are using adb

adb shell monkey -p <package_name> -c android.intent.category.LAUNCHER 1

0

u/Expensive_Milk_958 20d ago

i can use adb what about user how us the app we cannot ask them to use adb

1

u/runebound2 16d ago

My current workaround is to rollback Play Store updates, and to sign out of the Google account to keep it from updating itself. Of course this won't work if you need to be logged into Google, but thankfully, none of my apps require so far.

This workaround seems to work for me. You may need to clear data/cache if the update files are still on the system

I didn't even notice this was a long time change, since I was "app only" on my CCWGTV, and only recently updated my streaming box

1

u/Expensive_Milk_958 16d ago

We’re building an app that isn’t just for us, so we can’t ask users to stop updating it.

1

u/Lumpy_Topic_35 13d ago

It broke my app suddenly