现象说明:toast没有弹出
12-11 16:36:59.032 1042 1828 W NotificationService: Package com.xxx.xxx is above allowed toast quota, the following toast was blocked and discarded: CustomToastRecord{a5e529f 3527:com.baidu.naviauto/u11a131 isSystemToast=false token=android.os.BinderProxy@e0a5ba8 callback=android.app.ITransientNotification$Stub$Proxy@d4fcfec duration=1}
翻阅google文档发现Android 12系统对toast进行了限制
google 有时间次数限制:
private static final MultiRateLimiter.RateLimit[] TOAST_RATE_LIMITS = {
MultiRateLimiter.RateLimit.create(3, Duration.ofSeconds(20)),
MultiRateLimiter.RateLimit.create(5, Duration.ofSeconds(42)),
MultiRateLimiter.RateLimit.create(6, Duration.ofSeconds(68)),
}
系统应用有个非限制性权限,可以试试。
android:name="android.permission.UNLIMITED_TOASTS" 。