android實(shí)現(xiàn)短按電源鍵關(guān)機(jī)的實(shí)現(xiàn)代碼
打開(kāi)文件:frameworksbasepolicysrccomandroidinternalpolicyimplPhoneWindowManager.java 在代碼: private static final int MSG_POWER_LONG_PRESS = 14;下面添加:
private static final int MSG_POWER_SHUT_DOWN=15;
在:
case MSG_POWER_LONG_PRESS: powerLongPress(); break;
下面添加:
case MSG_POWER_SHUT_DOWN:mWindowManagerFuncs.shutdown(false);break;
找到 case KeyEvent.KEYCODE_POWER:注釋掉
/*result &= ~ACTION_PASS_TO_USER; isWakeKey = false; // wake-up will be handled separately if (down) { interceptPowerKeyDown(event, interactive); } else { interceptPowerKeyUp(event, interactive, canceled); } break;*/
再添加:
if(down){if(mPowerManager.isScreenOn()) {Message msg = mHandler.obtainMessage(MSG_POWER_SHUT_DOWN);msg.setAsynchronous(true);mHandler.sendMessageDelayed(msg,ViewConfiguration.get(mContext).getDeviceGlobalActionKeyTimeout());} else {Log.e('GO to Wakeup--------> TTTEEE','keyCode :'+keyCode);wakeUpFromPowerKey(event.getDownTime());}} break;
之后在目錄frameworks/base/policy中mm編譯出android.policy.jar push到system/framework重啟即可
到此這篇關(guān)于android實(shí)現(xiàn)短按電源鍵關(guān)機(jī)的實(shí)現(xiàn)代碼的文章就介紹到這了,更多相關(guān)android 短按電源鍵關(guān)機(jī)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法2. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明3. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向4. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法5. PHP設(shè)計(jì)模式中工廠模式深入詳解6. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析7. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無(wú)效問(wèn)題8. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過(guò)程(親測(cè)可用)9. 如何基于Python Matplotlib實(shí)現(xiàn)網(wǎng)格動(dòng)畫10. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)
