开发平台基本信息
芯片: MT8766
版本: Android 12
kernel: msm-4.19
问题描述
在Android12的系统开发过程中,发现下拉菜单在长按的时候,没有正常进入到系统设置界面,而是会奔溃;奔溃日志指向com.android.systemui.statusbar.phone.StatusBar.lambda$startActivityDismissingKeyguard
解决方法
--- a/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
+++ b/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
@@ -2952,6 +2952,13 @@ public class StatusBar extends SystemUI implements DemoMode,
startActivityDismissingKeyguard(intent, onlyProvisioned, dismissShade, 0);
}
+ private Runnable mRunnable = new Runnable() {
+ @Override
+ public void run() {
+ mAssistManagerLazy.get().hideAssist();
+ }
+ };
+
private void startActivityDismissingKeyguard(final Intent intent, boolean onlyProvisioned,
final boolean dismissShade, final boolean disallowEnterPictureInPictureWhileLaunching,
final Callback callback, int flags,
@@ -2973,7 +2980,8 @@ public class StatusBar extends SystemUI implements DemoMode,
boolean dismissShadeDirectly = dismissShade && animController == null;
Runnable runnable = () -> {
- mAssistManagerLazy.get().hideAssist();
+ mHandler.post(mRunnable);
+ // mAssistManagerLazy.get().hideAssist();
intent.setFlags(
Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(flags);