jpush-flutter-plugin
jpush-flutter-plugin copied to clipboard
基于Kotlin重构Android插件代码并支持多Flutter engine和更精准的result回调管理
现有JPushPlugin的职责太多
- onMethodCall调用处理
- 管理各种回调的缓存
- 基于static的持有JPushPlugin instance,并在每次attach之后被新的plugin实例覆盖,这样是不合理的,存在潜在bug
- 过多的isDartReady,instance = null, context = null相关判断, 显得比较混乱
- 持有静态内部类JPushReceiver,并和宿主基于static的JPushPlugin instance进行数据交互
所以拆分JPushPlugin的缓存和回调分发功能到单例类:JPushCallbackDispatcher。 JPushPlugin专注于onMethodCall的dart端代码调用处理。 另外删除静态内部类JPushPlugin$JPushReceiver,相关功能合并到JPushEventReceiver
架构变化如下:

放弃吧...你看他们鸟你吗...这就是你国内上游厂商🤮