Android TV 包安装成功后找不到启动图标

2020-03-09 21:34:48

说明

要开发一款TV项目,使用 Android Studio 直接创建 TV 项目。

问题

生成APK文件,用U盘插入到小米盒子上,然后点击安装,提示安装成功

可是找不到启动图标,安装成功的弹窗也没有打开的选项。
而我之前测试装的一款手机应用是可以找到启动图标的。

PS :  小米盒子上已安装的应用,在  精选 > 我的应用  的路径下(正常情况下,安装的应用都在 我的应用 里,而我的新项目却找不到)

小米盒子已安装应用路径


处理

为此,我在特意安装了 TV管家 (当贝助手),应用卸载的列表里是可以看到此应用的。

至此,可以确定的是,应用安装成功,但是找不启动按钮。

解决

应该算是 Android Studio 创建默认 TV的一个bug,如下:

 <activity
            android:name=".ui.MainActivity"
            android:banner="@drawable/app_icon_your_company"
            android:icon="@drawable/app_icon_your_company"
            android:label="@string/app_name"
            android:logo="@drawable/app_icon_your_company"
            android:screenOrientation="landscape">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" /><!--                <category android:name="android.intent.category.LEANBACK_LAUNCHER" />-->
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

当 category 为 android.intent.category.LEANBACK_LAUNCHER 时,不展示启动图标。

改为和手机应用的一样就可以看到启动图标了,即 android.intent.category.LAUNCHER

如上代码,就可以找到启动图标,正常使用App了。

最后附上开发文档的一句话

注意:如果您不在应用中包含 CATEGORY_LEANBACK_LAUNCHER intent 过滤器,那么用户在 TV 设备上运行 Google Play 时将看不到您的应用。此外,如果您的应用没有此过滤器,那么当您使用开发者工具将其加载到 TV 设备上时,该应用不会出现在 TV 界面中。


  • 2019-11-21 18:13:08

    如何在vue单页应用中使用百度地图

    百度开发者平台已经封装了基于vue的地图组件,详细使用,请参考官网: https://dafrok.github.io/vue-baidu-map/#/zh/start/installation 网上有一些是直接在index.html页面全部引用的,本人强烈反对此种使用方式,因为我们项目是组件化的单页应用,强行引入多页应用的开发方式,会破坏整个项目的框架,严重影响性能。有些甚至还在vue单页应用中引入jquery,感觉这都是一些反人类的骚操作,不到万不得已,不建议使用。

  • 2019-11-25 17:04:10

    Throttle 和 Debounce 的本质及一个简单的实现

    Throttle,Debounce 就不把这两个词翻译成中文了,直接解释他们的概念。实际上这两个东西本质上是一样的,作用都是「为了避免某个『事件』在『一个较短的时间段内』内连续被触发从而引起的其对应的『事件处理函数』不必要的连续执行」。那么区别在哪呢?

  • 2019-11-25 17:05:44

    js实现 throttle 和 debounce,节流,防抖详解

    throttle 节流:drag改变浏览器大小,触发onresize函数,实现拖动每过1秒输出一次,不足1秒,1秒后输出一次。多用于高频操作,如抢票、抢购等,无论点击多少次,只固定间隔执行一次,以减轻压力。debounce防抖:drag改变浏览器大小,触发onresize函数,实现拖动停顿1秒输出。多用于输入框,当某一次输入后停顿满n秒才会去触发远程搜索。

  • 2019-11-25 17:37:01

    百度地图GeoUtils示例

    百度地图JavaScript开源库,是一套基于百度地图API二次开发的开源的代码库。目前提供多个lib库,帮助开发者快速实现在地图上添加Marker、自定义信息窗口、标注相关开发、区域限制设置、几何运算、实时交通、检索与公交驾车查询、鼠标绘制工具等功能。