适用于 Netflix Android TV 应用的电影 Deeplink (com.netflix.ninja)

Leu*_*hil 1 netflix deep-linking android-intent android-tv

我已经看到有关如何为移动 Netflix 应用程序为 Netflix 进行电影深度链接的解决方案,但对于该应用程序的 Android TV 版本,这些相同的解决方案似乎不起作用。

我尝试使用带有 action.VIEW 的 Intent 并传递普通的 Netflix URL,例如:http : //www.netflix.com/watch/ {movieId} 或使用 nflx:// 协议。

对于 android 电视应用程序,只有 nflx:// 协议似乎可以在打开应用程序的地方做任何事情,然后它只是停留在主菜单而不是播放电影。使用 http:// 协议会在浏览器中打开 netflix,它只会要求您下载手机或平板电脑应用程序。

有没有人能够弄清楚这一点?

小智 7

我想要同样的,所以我花了一些时间挖掘。这是可能的,因为 Netflix 系列和电影会出现在 Android TV 启动器搜索结果中,并且可以从那里启动。显然,该意图中有额外的意图,它们是缺失的部分。最大的问题是没有简单的方法来捕获这些意图附加内容(logcat 不显示附加内容),但我仍然找到了方法。以下代码执行您想要的操作:

Intent netflix = new Intent();
netflix.setAction(Intent.ACTION_VIEW);
netflix.setData(Uri.parse("http://www.netflix.com/watch/70202141"));
netflix.putExtra("source","30"); // careful: String, not int
netflix.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK);
getActivity().startActivity(netflix);
Run Code Online (Sandbox Code Playgroud)

或者,通过 adb:

adb shell am start -c android.intent.category.LEANBACK_LAUNCHER -a android.intent.action.VIEW -d http://www.netflix.com/watch/70202141 -f 0x10808000 -e source 30 com.netflix.ninja/.MainActivity
Run Code Online (Sandbox Code Playgroud)

这样我就可以直接进入电影或连续剧,它会自动开始播放。要在不自动播放的情况下进入屏幕,请使用 /title/ 而不是 /watch/。在 netflix ninja 3.3.1 build 1513 for Android TV on arm 上测试。