0
点赞
收藏
分享

微信扫一扫

大厂面试问题广?先来看看这些Android高级面试题你都掌握了没

gy2006_sw 2022-02-02 阅读 53

三、Android优秀三方库源码

1、你项目中用到哪些开源库?说说其实现原理?

2、Android中软引用与弱引用的应用场景

四、热修复、插件化、模块化、组件化、Gradle

1、热修复和插件化

热修补技术是怎样实现的,和插件化有什么区别?

为什么选用插件化?

2、模块化和组件化

  • 模块化的好处

  • 组件化原理,组件化中路由(ARouter)的实现

  • Android 组件化的原理,还有一些组件化平时使用的问题。

  • 项目组件化的理解

  • 多模块开发的时候不同的负责人可能会引入重复资源,相同的字符串,相同的icon等但是文件名并不一样,怎样去重?

3、gradle

  • gradle熟悉么,自动打包知道么?

  • 如何加快 Gradle 的编译速度?

  • Gradle的Flavor能否配置sourceset?

  • Gradle生命周期

五、设计模式与架构设计

1、设计模式

  • 谈谈你对Android设计模式的理解

  • 项目中常用的设计模式

  • 手写生产者/消费者模式

2、架构设计

  • MVC MVP MVVM原理和区别?

  • MVC的情况下怎么把Activity的C和V抽离?

  • MVP 架构中 Presenter 定义为接口有什么好处;

  • MVP如何管理Presenter的生命周期,何时取消网络请求?

  • aop思想

  • Fragment如果在Adapter中使用应该如何解耦?

  • 项目框架里有没有Base类,BaseActivity和BaseFragment这种封装导致的问题,以及解决方法?

  • 设计一个音乐播放界面,你会如何实现,用到那些类,如何设计,如何定义接口,如何与后台交互,如何缓存与下载,如何优化(15分钟时间)

  • 从0设计一款App整体架构,如何去做?

  • 说一款你认为当前比较火的应用并设计(比如:直播APP,P2P金融,小视频等)

  • 实现一个库,完成日志的实时上报和延迟上报两种功能,该从哪些方面考虑?

其它高频面试题

1、如何保证一个后台服务不被杀死?(相同问题:如何保证service在后台不被kill?)比较省电的方式是什么?

2、Android动画框架实现原理。

3、Activity-Window-View三者的差别?

4、低版本SDK如何实现高版本api?

5、说说你对Context的理解?

6、Android的生命周期和启动模式

7、ListView和RecyclerView系列

8、如何实现一个推送,消息推送原理?推送到达率的问题?

9、动态权限系列

10、自定义View系列

11、对谷歌新推出的Room架构

12、没有给权限如何定位,特定机型定位失败,如何解决?

13、Debug跟Release的APK的区别?

14、android文件存储,各版本存储位置的权限控制的演进,外部存储,内部存储

架构师筑基包括哪些内容

我花了将近半个月时间将:深入 Java 泛型.、注解深入浅出、并发编程.、数据传输与序列化、Java 虚拟机原理、反射与类加载、高效 IO、Kotlin项目实战等等Android架构师筑基必备技能整合成了一套系统知识笔记PDF,相信看完这份文档,你将会对这些Android架构师筑基必备技能有着更深入、更系统的理解。

注:资料与上面思维导图一起看会更容易学习哦!每个点每个细节分支,都有对应的目录内容与知识点!


注:资料与上面思维导图一起看会更容易学习哦!每个点每个细节分支,都有对应的目录内容与知识点!

[外链图片转存中…(img-VyTncuRl-1643802046675)]
[外链图片转存中…(img-QarXr3jp-1643802046677)]
这份资料就包含了所有Android初级架构师所需的所有知识!需要的可以在我的GIthub里面去查看!

举报

相关推荐

0 条评论