2

背景:Android 3.0的使用物理鍵盤設置

我最近購買了摩托羅拉XOOM平板電腦與桌面底座和藍牙鍵盤配件一起。

底座和鍵盤工作得很好,但是當我將平板電腦從底座上移開離開辦公桌時,鍵盤仍與設備配對,我必須手動更改設置才能使用軟鍵盤。當我將它放回碼頭時也是如此,我需要手動將其切換回來。這不是一個巨大的問題,但它不會很好考慮它。

因此,我試圖從市場上下載一個應用程序,只需打開和關閉藍牙連接或斷開連接或斷開連接電源,一段時間後運行良好,但後臺服務會死後一段時間,直到我手動重新啓動。

的一點是:我想寫我的平板電腦一個小應用程序/服務時,它已停靠/取消固定,將識別和切換「使用物理鍵盤」相應地設置。

我已經開始用BroadcastReciever認識到碼頭州:

 
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(); 
    } 
} 

,但我有麻煩搞清楚事件被觸發後更新設置的最佳途徑。我使用InputMethodManager探索了一些示例,但所有方法似乎都需要特定的EditText或其他一些要綁定的輸入。

而且,我似乎無法找到代表,在文檔的任何地方設置相應的常數,但圖形,它位於:http://i.stack.imgur.com/esFaw.png

誰能幫我這個?

我想有一個解決方案來改變設置,但我也接受其他想法。

+0

也許設置爲不可訪問編程,你就不能關閉藍牙? – alexanderblom 2011-03-22 12:04:12

+0

我可以,但我想只要我在寫我自己,我會針對鍵盤的具體問題,以防萬一我(或其他人)想利用藍牙別的東西(耳機,流媒體等)一旦平板電腦已經脫模 – jeremyswitzer 2011-03-24 15:52:57

回答

0

我有一個類似的應用程序。它可以根據功率切換wifi和藍牙。

您需要在AndroidManifest.xml文件中註冊一些這些東西。

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

項目開源網站:http://code.google.com/p/futonic-wifioncall/

這不是解決辦法,但希望會給你想實現什麼指導。

+0

謝謝!我會看一看。我已經有了一個Android清單以及代碼,而且我已經簽署並將應用程序部署到了我的XOOM。它所做的只是在Dock/Undock時顯示Toast消息。所以,不是現在太有用了,但它不會永遠崩潰或死亡像一些其他的基於服務的解決方案,我已經試過的 – jeremyswitzer 2011-03-24 15:59:30