【问题标题】:Android 3.0 Use Physical Keyboard SettingAndroid 3.0 使用物理键盘设置
【发布时间】:2011-03-21 23:10:52
【问题描述】:

背景:

我最近购买了摩托罗拉 XOOM 平板电脑以及桌面基座和蓝牙键盘配件。

扩展坞和键盘运行良好,但是当我将平板电脑从扩展坞上取下以离开办公桌时,键盘仍然与设备配对,我必须手动更改设置才能使用软键盘。当我将它放回扩展坞时也是如此,我需要手动将其切换回来。这不是一个巨大的问题,但不必考虑它会很好。

所以我尝试从市场上下载一个应用程序,该应用程序在连接或断开电源时只需打开和关闭蓝牙,这在一段时间内运行良好,但后台服务会在一段时间后停止并变得无用,直到我手动重新启动那。

要点:我正在尝试为我的平板电脑编写一个小应用程序/服务,它可以识别它何时已停靠/取消停靠并相应地切换“使用物理键盘”设置。

我已经开始使用 BroadcastReciever 来识别 Dock 状态:

公共类 DockBroadcastReciever 扩展 BroadcastReceiver { 私有最终字符串 DOCK_STATE_LABEL = "android.intent.extra.DOCK_STATE"; @覆盖 公共无效 onReceive(上下文上下文,意图意图){ 捆绑附加服务 = intent.getExtras(); 字符串消息 = (extras.getInt(DOCK_STATE_LABEL) == Intent.EXTRA_DOCK_STATE_UNDOCKED) ? “未停靠”:“停靠”; Toast toast = Toast.makeText(context, message, Toast.LENGTH_LONG); toast.show(); } }

但我无法确定在事件触发后更新设置的最佳方式。我已经使用 InputMethodManager 浏览了一些示例,但所有方法似乎都需要特定的 EditText 或其他一些输入来绑定。

此外,我似乎在文档中的任何位置都找不到代表该设置的相应常量,但从图形上看,它位于此处:http://i.stack.imgur.com/esFaw.png

谁能帮我解决这个问题?

我希望有一个更改设置的解决方案,但我也愿意接受其他想法。

【问题讨论】:

  • 可能无法以编程方式访问该设置,您不能关闭蓝牙吗?
  • 我可以,但我想只要我自己写,我会针对键盘的特定问题,以防我(或其他人)想利用蓝牙做某事其他(耳机、流媒体等)一旦平板电脑已取消对接

标签: android keyboard settings android-3.0-honeycomb input-devices


【解决方案1】:

我有一个应用程序可以做类似的事情。它可以根据电量切换wifi和蓝牙。

您需要在 AndroidManifest.xml 文件中注册其中的一些内容。

http://code.google.com/p/futonic-wifioncall/source/browse/AndroidManifest.xml

项目开源站点:http://code.google.com/p/futonic-wifioncall/

这不是解决方案,但希望能为您尝试完成的工作提供指导。

【讨论】:

  • 谢谢!我会看看。我确实已经有一个与代码一起使用的 Android 清单,并且我实际上已经签署了该应用程序并将其部署到我的 XOOM。它所做的只是在我停靠/取消停靠时显示一条 Toast 消息。所以,目前不太有用,但它不会像我尝试过的其他一些基于服务的解决方案那样崩溃或死掉
猜你喜欢
  • 2012-01-11
  • 2016-04-28
  • 2011-07-20
  • 2012-08-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-24
  • 1970-01-01
相关资源
最近更新 更多