getActivity / Toaster

Android 吐司框架,专治 Toast 各种疑难杂症
Apache License 2.0
3.25k stars 406 forks source link

[Bug]:Compose中部分机型无法使用 #137

Closed qq2540040142 closed 3 months ago

qq2540040142 commented 3 months ago

框架版本【必填】

12.6

问题描述【必填】

使用compose开发时,调用Toaster.show()报错,已在Application中初始化

复现步骤【必填】

使用compose开发,并在Application中初始化,在程序任何位置调用即可复现

是否必现【必填】

项目 targetSdkVersion【必填】

34

出现问题的手机信息【必填】

开发板 Cpu:RK3568

出现问题的安卓版本【必填】

11

问题信息的来源渠道【必填】

自己遇到的

是部分机型还是所有机型都会出现【必答】

部分,开发板RK3568 Android11出现 红米手机Android13 测试正常

框架最新的版本是否存在这个问题【必答】

框架文档是否提及了该问题【必答】

是否已经查阅框架文档但还未能解决的【必答】

issue 列表中是否有人曾提过类似的问题【必答】

是否已经搜索过了 issue 列表但还未能解决的【必答】

是否可以通过 Demo 来复现该问题【必答】

提供报错堆栈

android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@3867f45 -- permission denied for window type 2038
2024-07-29 15:34:16.814   767-767   System.err              com.xa.intelligentterminal           W      at android.view.ViewRootImpl.setView(ViewRootImpl.java:1095)
2024-07-29 15:34:16.814   767-767   System.err              com.xa.intelligentterminal           W      at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:409)
2024-07-29 15:34:16.814   767-767   System.err              com.xa.intelligentterminal           W      at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:109)
2024-07-29 15:34:16.815   767-767   System.err              com.xa.intelligentterminal           W      at com.hjq.toast.ToastImpl$1.run(ToastImpl.java:171)
2024-07-29 15:34:16.815   767-767   System.err              com.xa.intelligentterminal           W      at com.hjq.toast.ToastImpl.show(ToastImpl.java:75)
2024-07-29 15:34:16.815   767-767   System.err              com.xa.intelligentterminal           W      at com.hjq.toast.GlobalToast.show(GlobalToast.java:23)
2024-07-29 15:34:16.816   767-767   System.err              com.xa.intelligentterminal           W      at com.hjq.toast.ToastStrategy$ShowToastRunnable.run(ToastStrategy.java:229)
2024-07-29 15:34:16.816   767-767   System.err              com.xa.intelligentterminal           W      at android.os.Handler.handleCallback(Handler.java:938)
2024-07-29 15:34:16.816   767-767   System.err              com.xa.intelligentterminal           W      at android.os.Handler.dispatchMessage(Handler.java:99)
2024-07-29 15:34:16.816   767-767   System.err              com.xa.intelligentterminal           W      at android.os.Looper.loop(Looper.java:223)
2024-07-29 15:34:16.816   767-767   System.err              com.xa.intelligentterminal           W      at android.app.ActivityThread.main(ActivityThread.java:7664)
2024-07-29 15:34:16.817   767-767   System.err              com.xa.intelligentterminal           W      at java.lang.reflect.Method.invoke(Native Method)
2024-07-29 15:34:16.817   767-767   System.err              com.xa.intelligentterminal           W      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
2024-07-29 15:34:16.817   767-767   System.err              com.xa.intelligentterminal           W      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:951)

提供截图或视频

No response

提供解决方案

No response

getActivity commented 3 months ago

小伙子,我在代码中有加判断是否有悬浮窗权限,才去弹全局的 WindowManager,如果还会出现报错,那么基本就能断定是系统的代码出现了 bug,这类问题需要反馈给对应的系统开发工程师,而不是找框架作者解决。

getActivity commented 3 months ago

另外给你提点建议,可听可不听,提任何问题前需要先搞清楚这个问题是谁的问题,而不是堆栈里面有框架的代码就是框架问题,这个操作让我觉得你出现问题都懒得去看一眼,只要出现问题都丢给别人,直接无视问题的根源和本质,最终不仅浪费了我的时间,也浪费了你的时间。

qq2540040142 commented 3 months ago

好的,谢谢轮子哥