4

我想创建一个电视就绪应用程序。由于这仍然是一个安静的新话题,我问自己这些问题:

  • 为了获得出色的电视体验,我需要牢记什么?
  • 我可以与我的电视应用程序共享代码吗?
  • 我可以重复使用布局、字符串和其他资源吗?

此外,我目前无法在网络上找到有用的资源,尤其是针对 Amazon Fire TV。我发现许多资源已过时或已移动,现在已成为死亡链接。

是否有一些最佳实践来实现出色的应用程序?

4

3 回答 3

6

这个答案仍在进行中


为了获得出色的电视体验,我需要牢记什么?

一个好的起点是 Android 文档Building Layouts for TV。亚马逊设计和用户体验指南。就我目前的知识而言,我认为为两个电视平台混合这些资源应该没有问题。

我还会检查这些资源:


我可以与我的电视应用程序共享代码吗?

您可以共享您当前使用的所有代码。您只需要扩展清单以确保它在电视上正确显示。

要在 Android TV 启动器上进行集成,您需要添加此类别以进行集成:

<category android:name="android.intent.category.LEANBACK_LAUNCHER" />

在此处阅读更多相关信息。

亚马逊以另一种安静的方式做到这一点,现在我不熟悉它,但似乎你需要先发布你的应用程序才能获得启动器集成。但是您始终可以通过使用设置和管理应用程序来启动您的应用程序。


我可以重复使用布局、字符串和其他资源吗?

是的你可以。我发现您可以使用-w960dp后缀来限制电视平台的资源。无需创建单独的应用程序来支持电视。


是否有一些最佳实践来实现出色的应用程序?

注意我上面提到的后缀,您为所需的目标设备类型定义了不同的资源。

因此,如果您使用此布局:

<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:text="@string/hello"/>

您可以定义此资源:

值/字符串.xml

<string name="hello">Hello mobile</string>

值-w600dp/strings.xml

<string name="hello">Hello tablet</string>

值-w960dp/strings.xml

<string name="hello">Hello TV</string>

这将为所有平台产生正确的问候(可穿戴设备始终是一个单独的项目)。

于 2014-10-20T07:31:46.447 回答
1

我已经开始撰写一系列文章,涉及为 Android TV创建应用程序的几个方面。每次发布新答案时,我都会更新此答案:

编辑

我刚刚发表了第二篇文章。列表已更新。

  1. 为 Android TV 构建
  2. 我们去定制吧
  3. 钟声和口哨声
于 2014-10-23T12:31:06.940 回答
0

在深入构建之前,您应该尝试将应用创意作为原型并测试这种电视体验。

在创建应用程序之前,您无需购买设备,您可以开始将其构建为 HTML/JS 中的网站,以敲定您的想法并快速调整外观。

测试“10 英尺”电视体验的选项

  1. 将您的计算机直接连接到您的电视输入,例如 HDMI。

  2. 如果您有带网络浏览器的智能电视,请在浏览器中加载测试站点。这确实成为令人耳目一新的变化的痛苦。

  3. 如果您想在交互性方面更进一步,请尝试使用选项一或二的 http://www.jumpwick.com 。

    • 它将让您测试使用手机在电视上控制您的应用程序
    • 所有基于浏览器
    • (完全披露我在产品http://www.jumpwick.com上工作,您当然可以在没有产品的情况下使用选项 1 或 2 创建您的应用程序)。
于 2015-11-09T19:20:39.993 回答