是否可以执行运行时检查以查看设备是否正在运行Android-Things?
答案 0 :(得分:10)
您可以查询所有Android Things设备实施的PackageManager
FEATURE_EMBEDDED
:
public boolean isThingsDevice(Context context) {
final PackageManager pm = context.getPackageManager();
return pm.hasSystemFeature(PackageManager.FEATURE_EMBEDDED);
}
最近在Android O Preview SDK中添加了此常量。在发布基于O的Android事物预览之前,您可能需要使用常量的文字名称:android.hardware.type.embedded
答案 1 :(得分:1)
您使用AndroidThings制作的任何apk都会上传到物联网控制台不到Play商店。
因此,如果您需要使用Gradle Flavors and a flag的单个代码库,我建议。这意味着你将构建两个单独的APK - 而不是做"我在运行时检查什么平台" 。
这将确保您的APK在内存受限的单独平台上具有最小的大小。 (例如,在Android Things上使用的Google Play服务的风格是可用于一般Android应用程序的精简版本)。 Android Things supports a subset of the Google APIs for Android. The linked table breaks down API support in Android Things.