滴滴乘客端Android架构解密 何斌斌

前端狗

2019/07/09 发布于 编程 分类

GMTC2019 

文字内容
1. 滴滴出行乘客端Android架构解密 何斌斌 乘客Android负责人
2. 自我介绍
3. 自我介绍
4. 自我介绍 滴滴出行乘客端Android负责人 十余年移动终端经验 拥有Android驱动、Framework、 Application等多方向研发经验 负责滴滴出行客户端公共基础、网 约车等产品线研发 何斌斌 hebinbin@didiglobal.com
5. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
6. 滴滴乘客端特点和挑战 多业务线多品类 多终端多入口 国际化差异支持 业务快速发展 持续稳定交付
7. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
8. 滴滴乘客端整体架构 国内乘客端 其他业务 网约车业务 国际化乘客端 … 业务模版 DRouter(路由框架) 个人中心 出行服务 支付交易 评价系统 … 业务组件 网络 日志 存储 地图 … 公共基础
9. 滴滴乘客端架构特点 稳定高效的基础库 业务组件化配置化 通信路由框架 APP快速接入 专注业务高效迭代 超过100+组件 业务线快速配置上线 DRouter 高效迭代 丰富组件库快速配置出新产品线,最高人效的情况下,能够高效支撑从原 来单一的专车产品线到当前多产品线(快优优拼出、专豪)、多客户端 (国内、Global)等需求迭代 稳定可靠 组件高内聚、低耦合,架构清晰,APP性能持续最优(万3)
10. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
11. 基础模块化-V1.0 Share Hybrid Widget Pay Location Push Utils Map Http IM Sign Log Patch Speech
12. 基础模块化-V1.0-问题 平台有哪些基础库可以复用?
13. 基础模块化-V1.0-问题 这些基础库怎么接入?接入时如何设置参数?怎么初始化呢?
14. 基础模块化-V1.0-问题 我想快速搭建一个APP启动所需要的流程(处理好Davilk加载的问题、 动态权限问题,闪屏页面、主页面,Scheme、路由等功能),快速 进入业务开发阶段?
15. 基础模块化-V2.0-Nimble 1小时 快速构建拥有滴滴基础能力的应用 一周 丰富的基础库 统一接入、加速开发 -UI Lib -Behavior Lib -Architecture -Foundation Lib -AppFrame 定制化支持 构建高质量、健壮的APP -Gradle Config -极低的Crash及内存占用
16. 基础模块化-Nimble 接入示例一 如何快速接入Nimble可以实现一个最小应用系统APP? //应用插件 class path 'plugin:0.0.9.6''>com.xiaoju.nova:nimble-plugin:0.0.9.6' apply plugin: 'com.didi.sdk.nimbleplugin' //配置支持AppFrame功能 NimbleConfig{ AppFrame{ enabled=true } } 添加基础模块插件 定制APP框架支持
17. 基础模块化-Nimble 接入示例一 App Framework 已经添加各系统版本兼容处理, 同时也集成了很多通用的功能模块:启动速度优化、自动统计启动耗时、性能监控等。 系统桌面 基础模块(Nimble) 定制应用 启动应用 Application Init ApplicationDelegate Init 应用初始化 Splash Activity Main Activity SplashDelegate MainDelegate 启动页 主界面
18. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
19. 业务配置化 组件 模版
20. 业务配置化 业务定制模版(国内网约车形态/国际化) 通用组件容器模版 组件仓库 地图组件 发单组件 运营组件 组件化框架 支付组件 其他组件
21. 业务配置化-组件化示例 司机卡片 组件
22. 业务配置化-组件化示例 组件制定: DriverComponent 功能逻辑:DriverPresent 视图差异定制: AbsDriverView
23. 业务配置化-组件化差异定制
24. 业务配置化-模版 首页 发单页 行程中 城市切换组件 价格预估组件 计价组件 上车点组件 车型选择组件 司机卡片组件 起终点组件 预约组件 安全组件 … 发单组件 行程分享组件 … …
25. 业务配置化-模版如何加载组件
26. 业务配置化-模版-示例
27. 业务配置化-模版-示例
28. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
29. 通信路由框架 解决的问题是什么? 统一协议 调度中心 资源复用
30. 通信路由框架-整体架构 DRouter 注解支持 Request Callback Target ServiceLoader Interceptor Loader 路由生成 RouterLoader 增量扫描 RouterStore 路由Plugin 路由 API
31. 通信路由框架-使用示例页面导航 支持Activity/Fragment/View 级别页面导航
32. 通信路由框架-使用示例页面导航 如何使用,发起导航?
33. 通信路由框架-使用示例拦截器 如何定义一个拦截器?
34. 通信路由框架-使用示例拦截器 简单使用拦截器
35. 目录 01 滴滴出行乘客端挑战 02 整体架构介绍 03 基础模块化-Nimble 04 业务配置化 05 通信路由框架-DRouter 06 未来展望
36. 未来展望 体验 持续高效业务迭代 质量 自动化体系 效率 更多跨端场景