JessYanCoding / AndroidAutoSize

🔥 A low-cost Android screen adaptation solution (今日头条屏幕适配方案终极版,一个极低成本的 Android 屏幕适配方案).
Apache License 2.0
13.47k stars 1.96k forks source link

ERROR:can only be called once~ #436

Closed ruanbaojun1105 closed 1 year ago

ruanbaojun1105 commented 1 year ago

Log:

image

Others:

加入开机自启,程序初始化大概率会崩一次才能再继续加载~~很奇怪为啥没人遇到~

Just4fun2021 commented 1 year ago

那就是你多次初始了,应该是你手动调用checkAndInit后,又自动初始化一次,因为在InitProvider 中是没有检查是否初始化的。个人觉得直接抛异常对于前期库的开发有好处【容易找出问题点】,但对外开放后抛异常闪退对用户不友好,健壮性不好。 我开发的一个sdk 给接入方使用,因为接入方不按正常流程使用,使得抛异常闪退被说,所以后面我将所有可能不正常使用的流程都要考虑进去。要做到保姆级sdk。 这就好比正常你洗澡是要脱衣服的,但是如果有人忘记脱了衣服就湿了,那喷头就要能识别出洗澡的人有没有脱衣服【当然这只是打比方】。

ruanbaojun1105 commented 1 year ago

@Just4fun2021 你真是个喷子,我放在开机自启中,而且我未调用任何初始化,就是用的框架自动启动初始化的,现在怀疑是系统优化的问题(我们做车机系统),现在用作者在其他issues问题下的方式:清单文件去掉框架自启初始化,手动调用。