欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android TV 初探(二) 创建项目

程序员文章站 2022-07-14 23:22:07
...

在上一篇中,我们已经成功连接了盒子,那么接下来,我们就可以来开始我们的第一个TV APP项目了。

首先要明确的是,谷歌推出了一个v17包 LeanBack来致力于TV开发,v17的意思就是说此依赖库最低支持到17,但是目前国内的Android TV市场混乱,很多盒子版本还停留在4.0(14,没见过更低的),最常见的盒子是4.4(19),而类似于天猫魔盒,小米,等盒子系统则是在5.1。正是鉴于此种情况,所以,我创建的Project,module都是和手机APP是一致的。是的,你没有看错错,是一致的!

如果要用LeanBack来创建TV APP,这里有一系列我个人觉得写得很好的文章:

传送门:Android TV 应用开发教程

现在开始创建自己的项目,和手机APP的创建 步骤一致,File -》new Project:

Android TV 初探(二) 创建项目

填写name ,包名等信息,随后“next”;

Android TV 初探(二) 创建项目

目前市场上,4.0的盒子还是有不少的,最常见的(就自己而言)版本是4.4,因此这里选择最低版本为4.0,项目中目标版本为19

Android TV 初探(二) 创建项目

Android TV 初探(二) 创建项目

这两步都是常规的操作,选择empty Activity ->next ->改Activity的名称->Finish.

到这一步,项目就算是初步创建完了,和手机app的创建是一致的。

但是,虽然起始项目是一样的,单鉴于电视毕竟还是有极大不同于手机的地方,因此,我们需要做一些设置,来注明我们的APP是一个TV app。

在AndrodiManifest.xml中加入如下的代码(和声明用户权限的标签为同一级别):

<!-- TV 项目一些设置 -->
    <uses-feature
        android:name="android.software.leanback"
        android:required="true" />
    <uses-feature
        android:name="android.hardware.touchscreen"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.type.television"
        android:required="true" />

这三个标签的分别是对APP做了三个要求:要求leanback,不需要触摸屏幕,以及声明app是TV 上的。

这几个标签加完之后,你会发现根标签<manifest>上有报错:Android TV 初探(二) 创建项目

这里提示的信息非常明显,就是说没有发现有

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

这一属性的Activity。

之所以有这样的提示,是因为我们已经声明当前应用为TV app,但是Activity的<category>标签却不是它要的。这也是手机app与TVapp的一个区别,当然如果骂我们在创建项目时已经指定是TV项目,则不会出现这样的提示,因为创建的第一个Activity已经默认有这样的一个标签。

需要指出的是,这个提示并不会影响项目的运行,因此我们可以选择不管它。

到这里,第一个Tv项目就算是创建完成,我们可以把这个项目运行到模拟器或者是盒子上了。

如何连接盒子?请点我,让我来告诉你

上一篇: Python编码问题详解

下一篇: RocketMQ