如何从 Android 电视设备中排除您的应用
How to exclude your app from Android TV devices
我想排除我的应用程序在 Android 电视设备中可用。
我应该向 Manifest
添加什么来过滤这些设备?
尝试过
<uses-feature
android:name="android.software.leanback"
android:required="true" />
但它的作用恰恰相反(应用仅适用于 Android 电视)
<uses-feature> 是关于您的应用需要或使用的内容,因此它是一个积极的选择器而不是消极的。
你不能说 "I want only devices that do not have this".
至于 Android 电视,如果我们考虑到大多数电视都没有触摸控件,则可以将它们过滤掉。这意味着如果您在清单中设置:
<uses-feature
android:name="android.hardware.touchscreen"
android:required="true" />
那么您的应用将不会在至少大多数 Android 电视设备上显示。
虽然 M. Prokhorov 的回答更准确,但我想添加一些关于此的更多信息。
如果您有兴趣为 Google Play 商店上传,可以转到 Google Play Console
-> Release Management
-> Device Catalogue
。从那里您可以排除设备以查看您的应用程序。您可以从 "all devices" 中选择设备 one-by-one,或者您可以应用一些过滤器,例如 SDK 版本或屏幕尺寸。
但这只是一个 "visibility" 功能,这意味着理论上您排除的设备可以 "fake" 它的功能并下载您的应用程序。实际上,如果我没记错的话,我想你会在 Play 商店看到一个 pop-up 说 "your device does not support this app, continue anyway?".
我想排除我的应用程序在 Android 电视设备中可用。
我应该向 Manifest
添加什么来过滤这些设备?
尝试过
<uses-feature
android:name="android.software.leanback"
android:required="true" />
但它的作用恰恰相反(应用仅适用于 Android 电视)
<uses-feature> 是关于您的应用需要或使用的内容,因此它是一个积极的选择器而不是消极的。
你不能说 "I want only devices that do not have this".
至于 Android 电视,如果我们考虑到大多数电视都没有触摸控件,则可以将它们过滤掉。这意味着如果您在清单中设置:
<uses-feature
android:name="android.hardware.touchscreen"
android:required="true" />
那么您的应用将不会在至少大多数 Android 电视设备上显示。
虽然 M. Prokhorov 的回答更准确,但我想添加一些关于此的更多信息。
如果您有兴趣为 Google Play 商店上传,可以转到 Google Play Console
-> Release Management
-> Device Catalogue
。从那里您可以排除设备以查看您的应用程序。您可以从 "all devices" 中选择设备 one-by-one,或者您可以应用一些过滤器,例如 SDK 版本或屏幕尺寸。
但这只是一个 "visibility" 功能,这意味着理论上您排除的设备可以 "fake" 它的功能并下载您的应用程序。实际上,如果我没记错的话,我想你会在 Play 商店看到一个 pop-up 说 "your device does not support this app, continue anyway?".