正在检测 Android 部 Go 手机

Detecting Android Go phones

我开发了一个应用程序,但现在我想在应用程序第一次启动时检查它是否是 Android Go phone 如果是,请告知用户它不是支持。

在 Android 中可以检查 SDK 版本,但是否也可以检查它是否是 Go phone?

我想排除 Android Go phone,因为它们不支持我的应用程序需要的 SYSTEM_ALERT_WINDOW

查看官方文档 https://developer.android.com/google/play/publishing/multiple-apks,它说要在 android Go 上 运行 的应用程序,您需要

To target devices running Android (Go edition), your APK needs to declare:

<uses-feature android:name="android.hardware.ram.low" android:required="true">

target at least API Level 26, and have a higher version code than your non-Go edition APK.

因此,只要不将之前的代码放入您的清单中,您的应用将无法用于 android Go。

你可以打电话

 ActivityManager.isLowRamDevice();

PackageManager.hasSystemFeature("FEATURE_RAM_LOW");

如果设备是 运行 Android Go 版本,两者都会 return true,如果是 运行 常规 false =23=].

source