App项目的基本要素(持续更新)

1.业务中的技术栈

影音视听

视频:

  • bilibili视频(上海)
  • 快手/西瓜视频
  • 斗鱼直播/映客直播
  • 唱吧/全民k歌

音频:

  • 喜马拉雅FM(上海)/蜻蜓FM(上海)/豆瓣FM
  • 网易云音乐/qq音乐/虾米

在线教育:

  • 沪江网校/哒哒英语(上海)
  • 百词斩(成都)/英语流利说(上海)
  • 每日英语听力/猿题库

==核心技术点:音视频直播流、音视频编码==

旅游交通(LBS)

地图:

  • 高德/车来了

用车:

  • 滴滴拼车/Uber
  • 摩拜

  • 携程(上海)/去哪儿旅行

  • Booking/艺龙/Airbnb

==核心技术点:lbs==

社交

IM:

  • 微信/手q
  • 领英/脉脉/陌陌/微博/世纪佳缘

阅读(Feed流订阅):

  • 手空/知乎/Quora/知识星球
  • 豆瓣阅读(方舟阅读科技)/qq阅读(阅文)/得到
  • 今日头条/即刻(上海)

招聘:
100offer/拉钩/51job

==核心技术点:即时通信技术==

金融理财

网贷

  • 51信用卡管家
  • 支付宝/京东金融

理财:

  • 陆金所(平安)
  • 同花顺/东方财富

==核心技术点:通信安全==

购物餐饮医疗

购物:

  • 手淘(上海)/京东商城(上海)/小红书(上海)

==核心技术点:UI多变==

餐饮:

  • 美团/饿了吗(上海)

==核心技术点:lbs==

医疗:

  • 丁香医生

健身

  • Keep

工具

  • 输入法(搜狗、百度、讯飞)
  • 安全卫士+应用商店(360、2346、百度、豌豆荚)
  • 有道词典
  • 邮箱

2.架构中底层的技术选型

基础库

  • [ ] 网络库:Retrofit(基于OkHttp)、Volley(HttpUrlConnection)
  • [ ] 数据库:
    • sql:LiteORM、GreenDao、Room、Realm
    • nosql:LevelBD
  • [ ] 图片缓库:Glide/Picasso、Fresco
  • [ ] 音视频库:ExoPlayer、ijkplayer
  • [ ] 音视频缓存库:

Note:由于图片和音视频这种资源属于变化小,所以需要对其进行缓存,以便于复用

  • [ ] 函数式响应编程:RxJava、Rx化
  • [ ] io操作库:Okio
  • [ ] 地图库:高德 腾讯 百度

架构库

解耦库
- [ ] 依赖注入:Butter Knife,Dagger2
- [ ] 软件架构:MVC MVP MVVM
- [ ] 模块化:组件化、插件化、热修复(由于对于横向的解耦国内比较乱,关于这几个概率国内在后续解释一下,目前先这么划分)
- 组件化:install app(android团队)
- 插件化:Small、VirtualAPK、DroidPlugin(360)
- 热修复:RN、Tinker、QZone、AndFix(阿里)、Robust(美团)
- 组件通讯:EventBus、Otto、ARouter

Note:MVC、MVP、MVVM解决的是架构中数据纵向的交互,组件化、插件化、热修复解决的是架构中横向的数据交互。

快速迭代
- [ ] hybrid框架:
- 原生开发:Java | Kotlin
- 混合开发:Java & mobile Web | Kotlin & mobile Web

运维

  • [ ] log库:Logger、Timber、Hugo
  • [ ] 埋点:mixpanel-android
  • [ ] crash:ACRA

ELK前端日志分析、监控系统

服务厂商

服务厂商我将其划分为三类:

  • 公司主要业务就是这一块,依靠服务挣钱
  • ROM公司,这一块为公司拓展的业务。
  • 由于自身业务需要,大厂需要自己搞.

所以我们调查方向的来源都是依据上面。

基本服务

推送、数据统计、分享、IM、短信验证、crash收集器

除了“crash收集器”服务,其他的服务这些服务厂商都有提供(极光/友盟/mob/小米/华为/腾讯/百度),所以接下来的讨论只是提取了重要的加以说明。

1.推送:

  • 极光推送(业内知名)
  • 腾讯信鸽

2.数据统计:

  • 友盟统计(业内知名)
  • 诸葛/TalkingData

3.分享

  • SharedSDK(mob业内知名)

4.IM

  • 云通信IM(腾讯云)

5.短信验证

比较多,不做讨论

6.crash收集器

目前就只看到两家:腾讯的bugly和fabric的crashlytics

测试服务

灰度测试、云测

  • 小米/Testin

支付/网络优化/评论系统

  • 支付:微信/支付宝
  • 网络优化:TwinPrime
  • 评论系统:畅言

直播SDK

你可能感兴趣的:(Android架构师)