Android 添加按电源键结束通话(3)

case KeyEvent.KEYCODE_POWER: {
                result &= ~ACTION_PASS_TO_USER;   
                if (down) {
        Log.i("xxnan","xxnan"+"xiaxiangnan"); 
      int end_call_key=Settings.System.getInt(mContext.getContentResolver(),
                    "press_power_end_call",0); //取出数据库中是否打开这一功能的值 
      Log.i("end_call_key","end_call_key="+end_call_key);
                    ITelephony telephonyService = getTelephonyService(); 
      boolean hungUp = false;                   
                    if (telephonyService != null) {
                        try {
                            //如果是电话正在打且开启了这一功能,当按power键就挂掉电话 
                            if (telephonyService.isRinging()&&end_call_key==1) {
                                // Pressing Power while there's a ringing incoming
                                // call should silence the ringer.
                              // telephonyService.silenceRinger();      
                              hungUp=telephonyService.endCall();
                            } else if ((mIncallPowerBehavior
                                    & Settings.Secure.INCALL_POWER_BUTTON_BEHAVIOR_HANGUP) != 0
                                    && telephonyService.isOffhook()) {
                                // Otherwise, if "Power button ends call" is enabled,
                                // the Power button will hang up any current active call.
                                hungUp = telephonyService.endCall();
                            }
                       
                        } catch (RemoteException ex) {
                            Log.w(TAG, "ITelephony threw RemoteException", ex);
                        }
                    }
                    interceptPowerKeyDown(!isScreenOn || hungUp);
。。。。。。。。。。。
。。。。。。。。。。。

由于我这个开发板上是不能插电话卡的也就没能实验成功,但是原理应该就这样的!

最后修改过的地方都要重新编译,那么我们要在源码下编译app下的Phone以及framework下的policy

最后生成的out/。。。/system/app/Phone.apk和out/。。。。/system/framework/Android.policy.jar都要替换

手机里的相同(adb shell 进入你的手机,要有root权限)文件应该就可以了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/b6ac8b5aa7a048cfd93bb3f8d4d21701.html