Android 屏蔽\取消(禁止)下拉通知栏包括二级菜单下拉

修改方案很简单,就是直接返回类型进行屏蔽掉,让下拉效果失去,有些修改建议一起修改,不然会有意想不到的冲突,单独修改需要验证再验证,确保无其他bug产生。

有些版本可能方法的位置不一样,需要搜索一番才能尝试修改。

第一种情况,依据版本看panelsEnabled()方法的位置,if判断后其他代码不用注释掉

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java

 boolean panelsEnabled() {
  if(true)  return false;  //*/add start
 return (mDisabled1 & StatusBarManager.DISABLE_EXPAND) == 0 && !ONLY_CORE_APPS;
    }

 第二种:

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java

 @Override
    public boolean panelEnabled() {
        if(true) return false;  //*/add start
        return mCommandQueue.panelsEnabled();
    }

第三种:禁止解锁状态的亮屏中下拉通知菜单【单个验证有效】

vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar$ 

CommandQueue.java

// TODO(b/118592525): add multi-display support if needed.
    public boolean panelsEnabled() {
        if(true) return false;  //*/add start
        final int disabled1 = getDisabled1(DEFAULT_DISPLAY);
        final int disabled2 = getDisabled2(DEFAULT_DISPLAY);
        return (disabled1 & StatusBarManager.DISABLE_EXPAND) == 0
                && (disabled2 & StatusBarManager.DISABLE2_NOTIFICATION_SHADE) == 0
                && !ONLY_CORE_APPS;
    }
 

第四种:不加载下拉高度;禁止锁屏状态的亮屏中下拉通知菜单 +  【单个验证有效】

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java 

private void setQsExpansion(float height) {
        if(true) return;  //*/add start

height = Math.min(Math.max(height, mQsMinExpansionHeight), mQsMaxExpansionHeight);
        mQsFullyExpanded = height == mQsMaxExpansionHeight && mQsMaxExpansionHeight != 0;

 

第五种:如何删除屏蔽二次下拉菜单 +【同上第四个有点修改差异】

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java 

private void setQsExpansion(float height) {
        //height = Math.min(Math.max(height, mQsMinExpansionHeight), mQsMaxExpansionHeight);高度直接等于后者
        height = mQsMinExpansionHeight;//*/add start

        mQsFullyExpanded = height == mQsMaxExpansionHeight && mQsMaxExpansionHeight != 0;
        if (height > mQsMinExpansionHeight && !mQsExpanded && !mStackScrollerOverscrolling) {
            setQsExpanded(true);
        } else if (height <= mQsMinExpansionHeight && mQsExpanded) {
            setQsExpanded(false);
            if (mLastAnnouncementWasQuickSettings && !mTracking && !isCollapsing()) {
                announceForAccessibility(getKeyguardOrLockScreenString());
                mLastAnnouncementWasQuickSettings = false;
            }
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值