繁体   English   中英

如何确定Android设备是否有触摸屏?

[英]How to determine if an Android device has a touchscreen?

我花了相当多的时间让我的UI只使用键盘输入。 但最后我不确定我是否可以依赖Android设备都有触摸屏的假设。

有没有办法确定Android设备是否有触摸屏?

您应该研究现有设备并阅读Android兼容性定义文档 (CDD)并自行决定。

我花了一些时间试图为自己找出这个问题。 上面的海报是正确的,Android已经为一些非触摸设备供电,并将在不久的将来谷歌电视供电,但就目前而言,CDD特别要求所有Android设备都必须配备触摸屏

基本上,Android兼容性计划的创建是为了对冲你现在担心的那种碎片问题。 它列出了一系列要求, 如果设备不符合这些要求,则无法访问Android Market。 这些要求包括触摸屏,无线通信,蓝牙,相机等等。

如果你研究这些平板电脑和上网本,你会发现没有一个人携带Android Market。 Augen最近尝试使用他们的新款GENTOUCH 78平板电脑进行快速测试,但不得不取消他们声称这款平板电脑在被Android兼容性团队击落后会携带Android Market。

因此,如果您只通过Android电子市场发布应用,那么在Google更改CDD之前您无需担心。 但是,如果您想在其他应用商店中提供应用或直接下载,那么您将不得不担心您的关键模式导航问题。

如果有任何安慰,我发现许多应用程序都有完全相同的问题; 没有触摸屏就无法使用它们。 他们中的许多人也有焦点和软键盘的严重问题。 有时候键盘应该隐藏起来。 有时,无论您单击EditText多少次,都无法弹出键盘。 IMO,Android框架并没有很好地处理这些事情。

鉴于这一切,看看Google TV如何适应这一切肯定会很有趣。 他们会更新CDD以与他们的机顶盒兼容吗? 他们会为Google TV实施使用不同的SDK和CDD吗? 在谈到Google TV时,他们会完全忽略兼容性计划吗? 你的猜测和我的一样好。

更新:
谷歌的某个人似乎终于站出来承认Android还没有准备好在平板电脑上运行: http//phandroid.com/2010/09/10/shocker-google-says-android-not-meant-for -tablets合其电流状态/

对我而言,这表明谷歌并没有为加速采用Android操作系统做好准备,也没有为该平台的未来做好充分准备。 支持大于480x800的屏幕几乎是不可能的,三星只能通过与Galaxy Tab上的Google密切合作来实现这一目标。 所以我不太确定在不久的将来我们需要担心非触摸屏设备。 他们最终会在这里,我敢肯定,但是当他们到达时,我们可能会看到一个单独的应用程序市场,或者现有市场上的一些改进的过滤方案,一个新的CDD,谁知道。

对我而言,这表明谷歌仍然在聆听,我们只需要做同样的事情。

到目前为止,所有的手机都有触摸屏,但没有任何承诺。

然而,有很多上网本,笔记本电脑,很快就会成为没有触摸屏的电视。 然而,这些设备有老鼠。 从我所看到的,鼠标输入通过触摸系统被泵送,因此MouseDown是ACTION_DOWN等...(不知道右键单击)

你只针对手机吗? Android出现在包括电视在内的许多设备我不知道是否会发布新的库以将部分设备彼此隔离,但如果你想要更广泛的用户,我建议你保持键盘输入可用

谷歌电视(GTV)是最受欢迎的Android消息设备(截至本答案撰写时)。 但是,如果你有“notouch”资源(例如像res / layout-notouch /这样的目录),有几个设备会调用notouch渲染。

为了适应无印刷设备,确保焦点将产生视觉选择指示器,并且(对于GTV)按键听众适用于方向键中心按钮。 使用默认小部件和主题通常会自动完成大部分操作。 如果您自己创建按钮,则需要背景9补丁进行聚焦和聚焦+按下。

在GTV上运行是一个很好的测试环境,以确保notouch运行良好, GTV现在有一个模拟器 ,虽然它只在Linux / x86上运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM