文件:

frameworks/base/core/java/android/provider/Setings.java


        public static final String END_BUTTON_BEHAVIOR = "end_button_behavior";

        /**
         * END_BUTTON_BEHAVIOR value for "go home".
         * @hide
         */
        public static final int END_BUTTON_BEHAVIOR_HOME = 0x1;

        /**
         * END_BUTTON_BEHAVIOR value for "go to sleep".
         * @hide
         */
        public static final int END_BUTTON_BEHAVIOR_SLEEP = 0x2;

        /**
         * END_BUTTON_BEHAVIOR default value.
         * @hide
         */
        public static final int END_BUTTON_BEHAVIOR_DEFAULT = END_BUTTON_BEHAVIOR_SLEEP;


另:关于getInt(ContentResolver cr, String name, int def)接口参数的问题,最后一个参数def是默认值,在没有读取到数据库中的设置数据时使用,在文件:frameworks/base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java中有语句:mEndcallBehavior = Settings.System.getInt(resolver,
                    Settings.System.END_BUTTON_BEHAVIOR,
                    Settings.System.END_BUTTON_BEHAVIOR_DEFAULT);用来获取挂断键的默认行为以供在下面挂断键消息来了之后做处理:

case KeyEvent.KEYCODE_ENDCALL: {
                result &= ~ACTION_PASS_TO_USER;
                if (down) {
                    ITelephony telephonyService = getTelephonyService();
                    boolean hungUp = false;
                    if (telephonyService != null) {
                        try {
                            hungUp = telephonyService.endCall();
                        } catch (RemoteException ex) {
                            Log.w(TAG, "ITelephony threw RemoteException", ex);
                        }
                    }
                    interceptPowerKeyDown(!isScreenOn || hungUp);
                } else {
                    if (interceptPowerKeyUp(canceled)) {
                        if ((mEndcallBehavior
                                & Settings.System.END_BUTTON_BEHAVIOR_HOME) != 0) {
                            if (goHome()) {
                                break;
                            }
                        }
                        if ((mEndcallBehavior
                                & Settings.System.END_BUTTON_BEHAVIOR_SLEEP) != 0) {
                            result = (result & ~ACTION_POKE_USER_ACTIVITY) | ACTION_GO_TO_SLEEP;
                        }
                    }
                }
                break;


更多相关文章

  1. android 文件搜索
  2. 【Android】打开/读取文件的方法
  3. Android往SD卡上存储文件
  4. TextView 在xml文件中的解释
  5. android java 文件的读写
  6. Android使用Linux命令执行文件操作

随机推荐

  1. Android(安卓)ADB 端口占用问题解决方案
  2. Android(安卓)自定义Dialog、IOS风格;
  3. 如何在Windows上使用GIT下载Android源代
  4. Android使用Broadcast实现无序静态与动态
  5. Android的ViewAnimator及其子类ViewSwitc
  6. Android(安卓)关闭多个视图Intent.FLAG_A
  7. Android(安卓)中添加水平线和垂直线方法
  8. Android学习—Button的四种OnClick响应方
  9. ubuntu环境下载android系统源码代码
  10. 初学Android,使用Drawable资源之使用Shap