目录
相关问题
案例
分析解决
相关问题
安卓系统集成应用有时会遇到莫名的toast弹框,不清楚是哪个应用,可能频繁弹框影响体验,需要定位来源。
案例
终端未接U盘,却弹出如上toast,需要定位分析来源
分析解决
frameworks/base/core/java/android/widget/Toast.java
在handleShow中增加合适的打印找到包名
diff --git a/frameworks/base/core/java/android/widget/Toast.java b/frameworks/base/core/java/android/widget/Toast.java
old mode 100644
new mode 100755
index b35eb065e3..7ccc4cdf76
--- a/frameworks/base/core/java/android/widget/Toast.java
+++ b/frameworks/base/core/java/android/widget/Toast.java
@@ -689,6 +689,12 @@ public class Toast {
if (mHandler.hasMessages(CANCEL) || mHandler.hasMessages(HIDE)) {
return;
}
+ if("true".equals(SystemProperties.get("persist.sys.skip_toast","true"))){
+ TextView tv = mNextView.findViewById(com.android.internal.R.id.message);
+ if(tv != null && tv.getText().toString().contains("U盘已插入")){
+ Log.i(TAG,"found special toast ... package:" + mNextView.getContext().getOpPackageName());
+ }
+ }
if (mView != mNextView) {
// remove the old view if necessary
handleHide();