Dovar66 / DToast

同学,你的系统Toast可能需要修复一下!Fix Your Android Toast!
563 stars 60 forks source link

Android 11 警告 #20

Closed limxing closed 3 years ago

limxing commented 3 years ago

W: Accessing hidden field Landroid/widget/Toast;->mTN:Landroid/widget/Toast$TN; (greylist-max-p, reflection, denied) W: java.lang.NoSuchFieldException: No field mTN in class Landroid/widget/Toast; (declaration of 'android.widget.Toast' appears in /system/framework/framework.jar!classes3.dex) W: at java.lang.Class.getDeclaredField(Native Method) W: at com.dovar.dtoast.inner.SystemToast.getField(SystemToast.java:235) W: at com.dovar.dtoast.inner.SystemToast.setupToastAnim(SystemToast.java:215) W: at com.dovar.dtoast.inner.SystemToast.showInternal(SystemToast.java:82) W: at com.dovar.dtoast.inner.SystemTN.displayToast(SystemTN.java:131) W: at com.dovar.dtoast.inner.SystemTN.showNextToast(SystemTN.java:111) W: at com.dovar.dtoast.inner.SystemTN.notifyNewToastComeIn(SystemTN.java:71) W: at com.dovar.dtoast.inner.SystemTN.add(SystemTN.java:40) W: at com.dovar.dtoast.inner.SystemToast.show(SystemToast.java:52)

Dovar66 commented 3 years ago

DToast只在API26以下才会反射访问mTN: Field sField_TN = Toast.class.getDeclaredField("mTN") 具体代码可以clone后查看SystemToast#hookHandler()

limxing commented 3 years ago

SystemToast#setupToastAnim 并没有判断

Dovar66 commented 3 years ago

SystemToast#setupToastAnim 并没有判断

感谢提醒,我补充处理一下