- 实现Flutter插件调取原生方法
直白点说就是flutter与原生进行信息数据流的通讯交互,界面共享Flutter的
- 路由到原生界面
直接调取原生界面,基本与flutter关联不大,但是要注意写原生的时候是否与其他方法冲突
思路通过封住插件的形式跳转到原生界面(封装两个跳转到原生界面的方法即可)
关于混合开发如果要搞清楚的话,在开发需要注意几个点(仅针对Android部分)
1.关于Gradle配置的问题,如androidx与supper包之间的关系,如何处理或替换为统一的,不同插件中不同版本的androidx包之间如何处理,不同supper包之间。不同Kotlin插件之间的关系也要搞懂。
Flutter混合开发:
绝大多数页面可以考虑是用Flutter来实现,但是一些Flutter目前支持性不是特别好的插件最好不要用,不然很容易冲突的,尤其是flutter版本及androidx与android support包之间的问题。IOS目前不是很清楚会不会有和这个问题。
如果flutter插件中冲突解决方法:
- 打开flutter项目中android部分的项目,将插件全部下载下来后(下载来后展示方式和本地model导入一样),直接修改插件中的源码或者依赖,如有androidx和support的依赖,人为的修改所有依赖都为androidx或support,然后在修改依赖后看代码中引用变更后修改
关于依赖修改androidx与support时依赖对应表
https://blog.csdn.net/Comestudy123/article/details/84785440
flutter插件开发参考文档:
https://flutterchina.club/developing-packages/
// 创建一个叫hello的flutter插件
// 其中可以选择指定开发插件的语言,此插件使用swift开发ios,使用koltin开发android
flutter create --template=plugin -i swift -a kotlin hello
flutter插件教程非官方:
https://www.jianshu.com/p/c38dd2efa64a