Android Studio TV开发教程(二)管理电视控制器

本文档介绍了如何在Android Studio中开发TV应用,重点在于管理电视遥控器和游戏控制器的交互,包括D-pad的基本控制、手柄断开连接的处理、D-pad输入变化及按钮事件的响应,旨在提供流畅的用户体验。
摘要由CSDN通过智能技术生成

Android Studio TV开发教程

(转自Android官网https://developer.android.com/training/tv/start)

文章源自:光谷佳武 https://blog.csdn.net/jiawuhan/article/details/80618879


管理电视控制器

电视设备需要一个辅助硬件设备来与应用程序进行交互,形式为基本的遥控器或游戏控制器。 这意味着您的应用必须支持D-pad输入。 这也意味着你的应用程序可能需要处理离线的控制器,以及来自多种类型的控制器的输入。

本课讨论处理电视设备控制器的要求。

D-pad最低限度的控制

电视设备的默认控制器是D-pad。 一般来说,您的应用程序应该可以从仅具有上,下,左,右,选择,后退和主页按钮的遥控器操作。 如果您的应用程序是通常需要带有附加控件的游戏控制器的游戏,则您的应用程序应尝试使用这些D-pad控件进行游戏。 在这种情况下,您的应用程序还应警告用户需要控制器,并允许他们使用D-pad控制器优雅地退出游戏。 有关使用电视设备的D-pad控制器进行导航的更多信息,请参阅创建电视导航 。

手柄控制器断开连接

电视控制器通常是蓝牙设备,它可能会尝试通过定期进入睡眠模式和断开电视设备来节省电量。 这意味着如果应用程序未配置为处理这些重新连接事件,则可能会中断或重新启动应用程序。 这些事件可能发生在以下任何情况下:

  • 在观看几分钟长的视频时,D-Pad或游戏控制器进入睡眠模式,断开与电视设备的连接,然后重新连接。
  • 在游戏过程中,新玩家使用当前未连接的游戏控制器加入游戏。
  • 在游戏过程中,玩家离开游戏并断开游戏控制器。

任何可能断开和重新连接事件的TV应用程序活动都必须配置为处理应用程序清单中的重新连接事件。 以下代码示例演示了如何启用活动来处理配置更改,包括连接,断开连接或重新连接的键盘或导航设备:

<activity
  android:name="com.example.android.TvActivity"
  android:label="@string/app_name"
  android:configChanges="keyboard|keyboardHidden|navigation"
  android:theme="@style/Theme.Leanback">

  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
  </intent-filter>
  ...
</activity>

此配置更改允许应用继续通过重新连接事件运行,而不是由Android框架重新启动,这不是一个好的用户体验。

处理D-pad输入变化

电视设备用户可能有多种类型的控制器,他们使用他们的电视。 例如,用户可能同时拥有基本的D-pad控制器和游戏控制器。 游戏控制器在用于D-pad功能时提供的键码可能与物理D-pad发送的键码不同。

你的应用程序应该处理来自游戏控制器的D-pad输入的变化,所以用户不必物理地切换控制器来操作你的应用程序。 有关处理这些输入变化的更多信息,请参阅

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值