首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android-tv上从主屏幕上启动特定的LiveChannels频道

如何在android-tv上从主屏幕上启动特定的LiveChannels频道
EN

Stack Overflow用户
提问于 2018-06-22 19:23:19
回答 1查看 666关注 0票数 0

如果您完全熟悉电视输入框架和liv私下以及家庭频道节目预览,那么我有一个问题要问您。我正在尝试创建一个主屏幕频道,它将通过我们的电视输入服务列出最近观看的直播频道。我可以列出他们只是很好,但启动预览程序到指定的“实时频道”似乎是不可能的。有人知道怎么做吗?

代码语言:javascript
复制
    Intent intent = context.getPackageManager().getLaunchIntentForPackage("com.google.android.tv");
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(TvContract.buildChannelUri(channel.getId()));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-25 16:08:41

在浏览了LiveChannel的来源之后,我找到了答案

代码语言:javascript
复制
static long addPreviewProgram(Context context, long homeChannelId, Uri liveChannelUri){
    PreviewProgram.Builder builder = new PreviewProgram.Builder();

    Intent intent = new Intent();
    intent.setComponent(new ComponentName("com.google.android.tv", "com.android.tv.MainActivity"));
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(liveChannelUri);

    builder.setChannelId(homeChannelId)
            .setType(PreviewPrograms.TYPE_CLIP)
            .setIntent(intent);

    Uri programUri = context.getContentResolver().insert(PreviewPrograms.CONTENT_URI, builder.build().toContentValues());

    return ContentUris.parseId(programUri);

}

意图、操作和通道集发生在LiveChannel的MainActivity中,但MainActivity不是启动程序活动,所以必须将其指定为要启动的活动。必须将操作设置为Intent.ACTION_VIEW,否则将永远不会设置通道。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50994441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档