解決狀態欄點擊虛擬按鍵響應反應慢的問題

來源:互聯網
上載者:User

 前一篇文章寫了怎樣在狀態列添加虛擬按鍵http://blog.csdn.net/dclchj/article/details/7091031

但是有一個問題:當拉出expand的通知欄時,按鈕的響應非常慢。當時的解決辦法是將按鈕給屏蔽掉。不過,現在網上看到一篇文章,可以解決這個問題。思路是建立一個線程來處理按鍵訊息的發送。

 

文章轉自:http://blog.csdn.net/qjclinux/article/details/6665323

至於怎麼添加大家就去網上逛逛吧,多的不得了

 具體的修改就是修改 IntentReceiver了

    private final void updateIconKeyAction(Intent intent) {    int keycode = intent.getIntExtra("keycode",-1);    if (keycode != -1)        sendKey(keycode);     。。。。    }private void sendKey(final int keyCode) {Thread t = new Thread(){ public void run() {try {Thread.sleep(100);} catch (InterruptedException e1) {e1.printStackTrace();}long now = SystemClock.uptimeMillis();long n = System.currentTimeMillis();try {KeyEvent down = new KeyEvent(now, now, KeyEvent.ACTION_DOWN, keyCode, 0);KeyEvent up = new KeyEvent(now, now, KeyEvent.ACTION_UP, keyCode, 0);IWindowManager wm = IWindowManager.Stub.asInterface(ServiceManager.getService("window"));wm.injectKeyEvent(down, false);wm.injectKeyEvent(up, false);} catch (RemoteException e) {Log.i("Input", "DeadOjbectException");}}};t.start();}

 

註:稍微改了一點原文章,其實是方便基礎不好的朋友編程。主要代碼是一樣的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.