应用程序已安装,但图标未出现在启动器屏幕或应用程序列表中

Posted

技术标签:

【中文标题】应用程序已安装,但图标未出现在启动器屏幕或应用程序列表中【英文标题】:App installed but icon doesn't appear in launcher screen or app list 【发布时间】:2018-06-19 06:08:02 【问题描述】:

android 系统级设置应用程序已安装,但图标未出现在启动器屏幕中。我已共享清单文件。

<application
    android:icon="@drawable/logo_settings_color_48dp"
    android:label="@string/settings_app_name"
    android:banner="@drawable/ic_launcher_banner_settings"
    android:supportsRtl="true"
    android:theme="@style/Theme.Settings"
    android:usesCleartextTraffic="true">
    <activity
        android:name=".MainSettings"
        android:excludeFromRecents="true"
        android:theme="@style/Theme.Settings.Transparent"
        android:configChanges="keyboard|keyboardHidden|navigation"
        android:label="@string/settings_app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.settings.SETTINGS" />
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
        <intent-filter
            android:priority="3"
            android:label="@string/launcher_settings_app_name"
            android:icon="@drawable/ic_settings_launcher_icon" >
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LEANBACK_SETTINGS" />
        </intent-filter>
    </activity>  

【问题讨论】:

您看到的是默认图标还是根本没有图标。 图标根本看不到,我已经检查了已安装的应用程序并安装了应用程序。 您正在为 Android TV 制作应用程序吗?? 尝试用这个替换你的意图过滤器 - 我已经改变了,但没有运气。 【参考方案1】:

声明电视活动

旨在在电视设备上运行的应用程序必须在其清单中声明电视的启动器活动。它使用CATEGORY_LEANBACK_LAUNCHER 意图过滤器来执行此操作。此过滤器将您的应用识别为已启用电视,并让 Google Play 将其识别为电视应用。当用户在其电视主屏幕上选择您的应用时,此 Intent 会确定要启动的 Activity。

[...]

警告:如果您未在应用中包含 CATEGORY_LEANBACK_LAUNCHER 意图过滤器,则在电视设备上运行 Google Play 的用户将看不到它。此外,如果您在使用开发者工具将应用加载到电视设备时没有此过滤器,则该应用不会出现在电视用户界面中。

来源:Getting Started with TV Apps

所以一个活动必须有这个意图过滤器才能出现在电视启动器中:

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

您可能从here 复制的代码定义了启动器中的系统设置入口点。

如果您正在构建某种系统级应用程序,您应该在问题中提及这一点。

【讨论】:

感谢您的宝贵意见。 您还需要确保为您的应用定义了横幅。横幅应为 320 x 180 像素。参考:developer.android.com/training/tv/start/start.html#banner

以上是关于应用程序已安装,但图标未出现在启动器屏幕或应用程序列表中的主要内容,如果未能解决你的问题,请参考以下文章

iOS App图标未出现在屏幕上

获取android中所有已安装应用的图标

Android 应用程序未从快捷方式启动

为啥我的应用程序图标没有出现在模拟器或设备上?

已设置约束但视图未正确放置

将移动应用程序启动图标放在通知屏幕上以从锁定设备启动