android實現(xiàn)短按電源鍵關(guān)機的實現(xiàn)代碼
打開文件: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實現(xiàn)短按電源鍵關(guān)機的實現(xiàn)代碼的文章就介紹到這了,更多相關(guān)android 短按電源鍵關(guān)機內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 詳解Android studio 動態(tài)fragment的用法2. 解決Android studio xml界面無法預(yù)覽問題3. 圖文詳解vue中proto文件的函數(shù)調(diào)用4. Spring Boot和Thymeleaf整合結(jié)合JPA實現(xiàn)分頁效果(實例代碼)5. php模擬實現(xiàn)斗地主發(fā)牌6. 什么是python的自省7. Vue封裝一個TodoList的案例與瀏覽器本地緩存的應(yīng)用實現(xiàn)8. vue 使用localstorage實現(xiàn)面包屑的操作9. .Net Core使用Coravel實現(xiàn)任務(wù)調(diào)度的完整步驟10. Vuex localStorage的具體使用

網(wǎng)公網(wǎng)安備