外观
架构与 SDK
MVVM、Jetpack、SDK 设计与模块边界。
本领域共 87 条问答。先读与你当前场景相关的主题,再用全文搜索查找具体问题。
组件通信与依赖注入
- LiveData 如何感知 Lifecycle 并自动管理观察者?
- 为什么在 MVVM 中推荐使用 MutableLiveData 而非 LiveData?
- Hilt 相比 Dagger2 在 Android 中的优势是什么?
- 什么是 Hilt Module?如何自定义一个提供 Repository 实例的 Module?
- EventBus 的发布-订阅模式在 Android 中有哪些潜在风险?
- 为什么现代 Android 开发更倾向于使用 StateFlow/LiveData 替代消息总线?
- 静态注册和动态注册 BroadcastReceiver 的区别是什么?
- 为什么在 Android 8.0+ 中隐式广播受到限制?
- 如何在前台服务中安全地接收系统广播(如网络变化)?
- Navigation Component 如何简化 Fragment 之间的跳转逻辑?
- 如何为 Navigation Graph 设置 deep link 以支持外部 App 启动?
- 如何在导航过程中传递复杂对象参数?
Java 与网络基础 · 岗位补充
- 接口、继承和多态,怎样让业务代码更容易替换?
- ==、equals 和 hashCode,为什么会影响设备去重?
- 异常处理怎样兼顾资源释放和可定位性?
- 页面退出后,线程任务怎样真正取消?
- TCP/IP、DNS、TLS、HTTP,怎样串成一次请求?
- HTTP 重试与幂等,为什么会影响设备控制?
Android 工程与测试 · 岗位补充
- 四大组件各管什么?怎样用一个车机应用串起来?
- startService 与 bindService,生命周期差在哪里?
- MVC、MVP、MVVM,拿同一个温度页面怎么区分?
- Animation、Animator、Transition,什么时候用哪一个?
- SQLite 的表、SQL 和索引,怎样支撑本地查询?
- SQLite 事务与 WAL,怎样避免数据只改了一半?
- ADB 排查“车机页面卡住”,应该按什么顺序取证?
- JUnit、Instrumentation、Espresso、UIAutomator,怎么分工?
- 如何给一个设备控制模块写有价值的单元测试?
- 异步 UI 测试为什么时好时坏?怎样减少偶发失败?
车载协议与设备联调 · 岗位补充
- 车载中间件、CarService、VHAL,分别在哪一层?
- CAN 报文怎么变成屏幕上的一个温度值?
- SOME/IP 与普通 HTTP 接口,有什么直观区别?
- MQTT 与 WebSocket,为什么不能当作同一类协议?
- 设备控制为什么要区分“已发送”和“已完成”?
- 传感器数据怎样处理,才能让页面既稳定又及时?
- 机器人或具身智能终端的客户端,重点负责什么?
AI 座舱交互 · 岗位补充
AI 编程与全栈实践 · 岗位补充
- 怎样把 AI 编程工具真正用进日常开发?
- AI 写出的代码,应该按什么顺序审查?
- 怎样让 AI 帮忙分析日志和生成测试,而不是凭空猜原因?
- AI 全栈 Demo 怎样从想法做到可以演示?
- 给客户端设计后端接口,哪些约定不能省?
- 全栈 Demo 的数据库和管理后台,怎样保持简单又可维护?
需求、交付与产品意识 · 岗位补充
架构与工程
- MVVM 每一层到底做什么?
- 常见 Jetpack 组件分别解决什么问题?
- 模块化与组件化有什么区别?
- 常用设计模式怎样落到 Android 场景?
- 怎样建立代码质量与交付闭环?
- 技术方案怎样讲得清楚又可落地?
- Kotlin 的空安全能彻底避免空指针吗?
- Flow、StateFlow 与 SharedFlow 怎样选择?
- Room、DataStore 与文件各适合存什么?
- Android Agent 怎样分层,才能更换模型和适配不同系统?
- 一个 Android Agent 功能怎样从需求走到稳定上线?
语言与组件基础
前后端与运行保障
- 如何理解React 状态快照与闭包?
- 如何理解Effect 清理、请求乱序与页面恢复?
- 如何理解TypeScript、运行时校验与 API 契约?
- 如何理解SQL 索引与查询计划?
- 如何理解MVCC、事务隔离与并发不变量?
- 如何理解数据库迁移与滚动发布?
- 如何理解Go Context、Channel 与 goroutine 生命周期?
- 如何理解Python 异步、线程与进程?
- 如何理解Docker 资源限制与优雅退出?
- 如何理解日志、指标、Trace 与延迟预算?
智能硬件 SDK
- 如何理解协程是不是线程 suspend 会自动切后台吗?
- 协程怎样取消 怎样处理异常?
- MVVM 中每一层具体做什么?
- LiveData StateFlow SharedFlow 怎样选择?
- 怎样写一个能解释清楚的 MVVM 示例?
- 如果让你设计一个设备 SDK 你会怎样分层?
- 如何理解SDK 的公开 API 需要明确哪些契约?
- SDK 初始化与释放如何保证可靠?
- 组件化 模块化与依赖倒置怎样落地?
- AAR 发布和兼容性需要注意什么?
- 多机型 多系统 多固件怎样设计验证?
- SDK 出现线上问题 怎样做到可定位可回滚?