背景
Flutter项目集成个推
场景
后台通过个推离线推送添加了角标数字,然后应用启动的时候需要清除,查看个推文档有一个方法设置角标数字.
具体方法:
PushManager.getInstance().setHwBadgeNum(Context var1, int var2)
然而设置完以后角标不消失.然后按照华为开发者文档代码设置
Bundle extra = new Bundle();
extra.putString("package", "xxxxxx");
extra.putString("class", "yyyyyyy");
extra.putInt("badgenumber", i);
context.getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, extra);
依然不好使.但是自己写个新的demo,这样设置就好使.就是很纳闷了.
找了各种方案,各种试验,最终发现,调用了个推的设置方法后本地的方法设置也不好使了,把个推的方法注释,然后重启手机,再测试,本地方法好使了.
猜想
有可能跟手机型号也有关系,测试用的手机是华为mate,Android版本8.0,EMUI版本8.0,而且在flutter应用启动的时候还有报错信息,别的手机不会报错.
博主在Flutter项目中遇到个推离线推送角标清除不成功的问题,尝试了PushManager的设置方法和华为开发者文档提供的代码,但在华为Mate手机上均无效。即使在注释掉个推方法后,本地方法才开始生效。博主怀疑可能与手机型号或系统版本有关,存在兼容性问题。在进一步测试和排查后,寻找到了问题的解决办法。
3858

被折叠的 条评论
为什么被折叠?



