如何在我的应用程序中禁用Android TV支持?清单抱怨缺少LEANBACK_LAUNCHER

时间:2018-11-16 15:12:05

标签: android android-manifest android-tv disable

我一直在寻找从清单中禁用Android TV支持的方法。我知道我们的应用程序不兼容,并且我读过即使您打算支持Android TV,但应用程序仍然受到支持。

但是,我还没有找到一种方法来阻止清单要求输入INTENTBACK_LAUNCHER。我不想定义一个,因为我知道我们的应用与电视不兼容。

这些是我现在得到的警告:

  

期望使用功能android:name =“ android.software.leanback” android:required =“ false”标签。

     

期望活动具有android.intent.category.LEANBACK_LAUNCHER意向过滤器。

     

未明确标记为可选的硬件功能android.hardware.touchscreen

所以当我尝试提供期望的标签时,即使我说以下话:

  

uses-feature android:name =“ android.hardware.touchscreen” android:required =“ true”

它仍然会发出警告,提示可能并非所有电视都支持它,这只是一个警告,但确实很烦人,因为我故意不想支持Android TV。甚至在我仍然收到LEANBACK_LAUNCHER意图过滤器警告之后。

是否不需要触摸屏就可以让我删除需要LEANBACK_LAUNCHER的清单?我猜有些电视带有触摸屏?

有人知道如何明确禁用Android TV支持吗?

谢谢

3 个答案:

答案 0 :(得分:0)

您可以通过将tools:ignore属性添加到清单中来禁用棉绒检查,如下所示:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.example.sampleapp"
    tools:ignore="ImpliedTouchscreenHardware,MissingLeanbackLauncher,MissingLeanbackSupport">

答案 1 :(得分:0)

我坚持这样做,但是我认为这只是无法识别我的应用程序的错误,它不是android TV应用程序!

现在我将这些行添加到清单中,并修复3条警告中的2条

<uses-feature android:name="android.software.leanback" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>

不幸的是,我还没有最后警告的解决方案

  

期望活动具有android.intent.category.LEANBACK_LAUNCHER意向过滤器。

     

打算在电视设备上运行的应用程序必须声明启动器   电视节目清单中的活动   android.intent.category.LEANBACK_LAUNCHER意向过滤器。问题编号:   MissingLeanbackLauncher

我可以添加LEANBACK_LAUNCHER,但我不想添加!因为我想完全禁用android电视支持。

如果需要,创建一个“活动”并将此行添加到清单中

  <activity
    android:name="com.example.android.TvActivity"
    android:label="@string/app_name"
    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>

现在给您添加横幅的错误。添加此行

<application
  android:banner="@drawable/banner" >

答案 2 :(得分:0)

从您的依赖项中删除Leanback,例如 //实施BETWEEN

从清单中删除

'androidx.leanback:leanback:1.0.0'