Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 3.0使用物理键盘设置_Android_Keyboard_Settings_Android 3.0 Honeycomb_Input Devices - Fatal编程技术网

Android 3.0使用物理键盘设置

Android 3.0使用物理键盘设置,android,keyboard,settings,android-3.0-honeycomb,input-devices,Android,Keyboard,Settings,Android 3.0 Honeycomb,Input Devices,背景: 我最近购买了一台摩托罗拉XOOM平板电脑,以及桌面基座和蓝牙键盘配件 基座和键盘工作得很好,但当我将平板电脑从基座上取下离开办公桌时,键盘仍然与设备配对,我必须手动更改设置以使用软键盘。同样,当我把它放回码头时,我需要手动将它切换回码头。这不是一个大问题,但最好不要去想它 所以我试着从市场上下载一个应用程序,当连接或断开电源时,只需打开或关闭蓝牙,这在一段时间内运行良好,但后台服务会在一段时间后停止,直到我手动重新启动后才变得无用 切中要害:我正在尝试为我的平板电脑编写一个小应用程序/服

背景:

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

基座和键盘工作得很好,但当我将平板电脑从基座上取下离开办公桌时,键盘仍然与设备配对,我必须手动更改设置以使用软键盘。同样,当我把它放回码头时,我需要手动将它切换回码头。这不是一个大问题,但最好不要去想它

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

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

我从广播接收器开始识别停靠状态:

public class DockBroadcastReciever extends BroadcastReceiver { private final String DOCK_STATE_LABEL = "android.intent.extra.DOCK_STATE"; @Override public void onReceive(Context context, Intent intent) { Bundle extras = intent.getExtras(); String message = (extras.getInt(DOCK_STATE_LABEL) == Intent.EXTRA_DOCK_STATE_UNDOCKED) ? "Undocked" : "Docked"; Toast toast = Toast.makeText(context, message, Toast.LENGTH_LONG); toast.show(); } } 公共类DockBroadcastReciever扩展广播接收器{ 私有最终字符串DOCK\u STATE\u LABEL=“android.intent.extra.DOCK\u STATE”; @凌驾 公共void onReceive(上下文、意图){ Bundle extras=intent.getExtras(); 字符串消息=(extras.getInt(DOCK\u STATE\u LABEL)=Intent.EXTRA\u DOCK\u STATE\u UNDOCKED)?“UNDOCKED”:“Docked”; Toast Toast=Toast.makeText(上下文、消息、Toast.LENGTH\u LONG); toast.show(); } } 但是我很难找到在事件触发后更新设置的最佳方法。我已经使用InputMethodManager浏览了一些示例,但是所有的方法似乎都需要一个特定的EditText或其他一些要绑定的输入

此外,我似乎在文档中的任何地方都找不到表示该设置的相应常量,但从图形上看,它位于此处:

有人能帮我解决这个问题吗


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

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

您需要在AndroidManifest.xml文件中注册这些内容

项目开放源代码站点:


这不是解决方案,但希望能为您的目标提供指导。

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

您需要在AndroidManifest.xml文件中注册这些内容

项目开放源代码站点:


这不是解决方案,但希望能为您尝试实现的目标提供指导。

可能无法通过编程方式访问设置,您不能关闭蓝牙吗?我可以,但我认为只要我自己编写,我会针对键盘的特定问题,以防我(或其他人)使用一旦平板电脑解除锁定,您是否想将蓝牙用于其他用途(耳机、流媒体等)可能无法通过编程访问设置,您能否关闭蓝牙?我可以,但我认为只要我自己编写,我就会针对键盘的特定问题,以防我(或其他人)使用一旦平板电脑解除连接,您是否希望将蓝牙用于其他用途(耳机、流媒体等)?谢谢!我来看看。我已经有了一个安卓清单来支持代码,并且我已经在XOOM上签名并部署了应用程序。它所做的只是在我停靠/取消停靠时显示一条Toast消息。因此,目前还不太有用,但它不会像我尝试过的其他基于服务的解决方案那样崩溃或消亡,谢谢!我来看看。我已经有了一个安卓清单来支持代码,并且我已经在XOOM上签名并部署了应用程序。它所做的只是在我停靠/取消停靠时显示一条Toast消息。因此,目前还不太有用,但它不会像我尝试过的其他基于服务的解决方案那样崩溃或消亡