美文网首页
android-app进阶实战篇-组件化+Flutter混编

android-app进阶实战篇-组件化+Flutter混编

作者: StevenHu_Sir | 来源:发表于2022-06-13 16:21 被阅读0次

    架构分析

    • 该项目采用组件化方式进行编程
      • 开发语言

        • Kotlin
        • Java
        • Dart
          • 开发收藏和推荐模块
      • 入口类

        • HiApplication
        • logic
          • 将MainActivity的一些逻辑内聚在这,让MainActivity更加清爽
      • UI 公共组件/基类(common)

        • HiBaseActivity
        • HiBaseFragment
        • HiBaseApplication
        • HiFragmentTabView
      • UI组件库(hi-ui)

        • HiTabTop
        • HiTabBottom
        • HiBanner
        • HiRefresh
        • HiDataItem
      • 基础组件(hi-library)

        • HiLog
          • 能够打印堆栈信息
          • 堆栈信息获取
          • 支持任何数据类型的打印
          • 支持实现日志可视化
          • 能够实现文件打印模块
          • 支持不同打印器的插拔设计
          • 线程复用防止频繁的创建线程
          • 线程同步
        • HiExecutor
          • 多线程操作组件
      • 网络库-(HiRestFul)

        • 统一接口的入参,请求方式,请求头,返回值,请求URL。方便接口维护与复用
        • 隔离第三方网络请求框架,利于迭代跟替换
        • 支持动态更改接口域名BaseUrl
        • 支持添加个性化Header
        • 支持拦截器
        • viewmodel +respostory +livedata
      • Flutter混编

        • 页面秒开
          • Flutter预加载实现页面秒开,线程空闲时进行预加载,
          • 实例化多个Flutter引擎,分别加载不同的Flutter入口
        • 收藏模块
          • 实现将登录之后的auth-token传递给flutter,实现Dart端免登录(登录功能互通)
        • 推荐
          • Flutter跳转Native并传递消息
          • Native跳转Flutter并传递消息
        • Flutter嵌入NativeUI实践

      • 接口Mock

      • 路由

        • 使用ARouter
          • 通过Route和AutoWired收集注解,写入文件,实现跨模块Api调用
          • 1.开发阶段以注解的形式标记;2.编译时自动扫描到所有的配置3.运行时自动管理页面的映射/编译后手动映射
          • 利用ARouter实现拦截页面跳转,实现全局页面降级,当目标页不存在,应该友好地提醒他并重定向到一个统一的错误页面


            image.png

    效果图

    image.png image.png image.png image.png image.png

    仓库地址:
    https://gitee.com/android_steven/android-app/tree/master

    相关文章

      网友评论

          本文标题:android-app进阶实战篇-组件化+Flutter混编

          本文链接:https://www.haomeiwen.com/subject/cebomrtx.html