【问题标题】:How to make layout for Android app intended for wearables with api under 20如何为 20 岁以下 api 的可穿戴设备设计 Android 应用程序的布局
【发布时间】:2015-08-28 18:49:22
【问题描述】:
我购买了安卓 4.4.2、API 19 的廉价中国安卓手表。我想创建一个可以在手表和安卓手机上运行的应用程序。问题是,如果我将一些特殊布局放入 layout-watch 文件夹,则此限定符不起作用,因为它只能与最低 API 版本 20 一起使用。另外,如果我写这样的东西:
if(conf.uiMode == conf.UI_MODE_TYPE_WATCH) {
它返回 false 并且表现得像非手表设备。您能否给我一些提示如何为这种设备创建“手表应用程序”,这些设备也应该在 API 20+ 上运行?如何为可穿戴设备/手表指定特殊布局?如何编写判断当前设备是否为可穿戴设备/手表的条件?
谢谢
【问题讨论】:
标签:
android
layout
watch
responsibility
【解决方案1】:
我正在使用这个:
public static boolean isWatch(Activity activity) {
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.KITKAT_WATCH) {
Configuration conf = activity.getResources().getConfiguration();
return conf.uiMode == conf.UI_MODE_TYPE_WATCH;
} else {
if(UIUtil.getDisplayWidth(activity)<320||UIUtil.getDisplayHeight(activity)<320) {
return true; //Some dump Chinese watch
} else {
return false;
}
}
}