android 获取top 层activity并做相关逻辑处理

 

 

 

        近日,解决一个bug,就是我们在锁屏界面会弹出我们一个activity,这个时候状态栏就成了可以下拉的了,随便点击一个菜单中的图标,界面就会卡死,因此需要在top activity是我们添加的这个的时候,屏蔽掉状态栏下拉操作。

 

diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java b/packages/SystemUI/src/com
/android/systemui/statusbar/phone/PanelView.java
index 1e889f245..4847be45f 100755
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
@@ -25,6 +25,7 @@ import android.animation.ValueAnimator;
 import android.content.Context;
 import android.content.res.Configuration;
 import android.content.res.Resources;
+import android.content.ComponentName;
 import android.os.AsyncTask;
 import android.os.SystemClock;
 import android.os.UserHandle;
@@ -42,6 +43,9 @@ import android.view.ViewTreeObserver;
 import android.view.animation.Interpolator;
 import android.widget.FrameLayout;
 
+import android.app.ActivityManager;
+import android.app.ActivityManager.RunningTaskInfo;
+

 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.keyguard.LatencyTracker;
 import com.android.systemui.DejankUtils;
@@ -54,6 +58,7 @@ import com.android.systemui.statusbar.StatusBarState;
 import com.android.systemui.statusbar.notification.NotificationUtils;
 import com.android.systemui.statusbar.policy.HeadsUpManager;
 
+import java.util.List;
 import java.io.FileDescriptor;

 import java.io.PrintWriter;
 
@@ -62,6 +67,7 @@ public abstract class PanelView extends FrameLayout {
     public static final String TAG = PanelView.class.getSimpleName();
     private static final int INITIAL_OPENING_PEEK_DURATION = 200;
     private static final int PEEK_ANIMATION_DURATION = 360;
+    private static final String QUICK_RECORD_ACTIVITY = "LockscreenRecordTipsActivity";
     private long mDownTime;
     private float mMinExpandHeight;
     private LockscreenGestureLogger mLockscreenGestureLogger = new LockscreenGestureLogger();
@@ -254,6 +260,19 @@ public abstract class PanelView extends FrameLayout {
 
     @Override
     public boolean onTouchEvent(MotionEvent event) {
+        //kongbo add this for bug issue PFLYBWB-849
+        String topActivity = null;
+        ActivityManager activityManager = (ActivityManager) (mContext
+            .getSystemService(android.content.Context.ACTIVITY_SERVICE));
+        List<RunningTaskInfo> runningTaskInfos = activityManager
+            .getRunningTasks(1);
+        if (runningTaskInfos != null) {
+            topActivity = runningTaskInfos.get(0).topActivity.getClassName();
+        }
+
+        if (topActivity != null && topActivity.indexOf(QUICK_RECORD_ACTIVITY) != -1)
+            return false;
+        //kongbo add end

         if (mInstantExpanding || mTouchDisabled
                 || (mMotionAborted && event.getActionMasked() != MotionEvent.ACTION_DOWN)) {
             return false;
(END)

 

 

 

如此,甚妙啊!!!直接屏蔽掉了下拉操作~~~~

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值