Android开发Android开发经验谈

2020年BAT安卓面试重点:Java+自定义View+性能优化

2020-03-02  本文已影响0人  飞鱼_9d08

安卓面试的重点是哪些?

我收集整理了各种关于安卓面试资料,汇集了大厂和小公司的面经分享与面试题。

技术不断在更新。通过整理分析各大公司最新面试题,更好掌握安卓市场需求。

Android面试最常问的技术面;
Java相关的基础,数据结构与算法,性能调优、设计模式、NDK技术,人工智能,音视频开发以及混合开发等。

我总结了这些安卓面试所涉及到的常问范围及常问面试题(含答案),以及系统的进阶视频资料。并且每个技术专题做了技能树整理。
其中大部分都是大企业面试常问的面试题,可以对照这查漏补缺,当然了,这里所列的肯定不可能覆盖全部方式,不过也希望能对即将找工作的朋友起到一些帮助!

一、Java篇

1.多线程并发;

2.Java 中的引用方式,及各自的使用场景
3.HashMap 的源码
4.GC(垃圾回收)是什么?如何工作的?回收算法有哪些
5.Error 和 Exception 区别?
6.反射和注解了解吗?项目中有使用过吗?
7.网络相关:

8.Java 中 LRUCache 是如何实现的(源码角度)?为什么要用 LinkedHashmap?
9.设计模式:

10.ArrayList 和 LinkedList 区别?

二、自定义View

1.源码相关:

2.自定义 View;

3.Dalvik运行的是自定义的.dex字节码格式。
4.如何捕获应用全局异常?
5.Service 是使用,bind 和 start 的区别?
6.Android 中的 IPC 机制有哪些?(接着往下问)
7.属性动画源码?
8.大图加载
9.ANR 如何定位,如何分析?(trace 日志)
10.项目中使用了哪些开源库?挑一个说说源码?
11.MVC 和 MVP 区别?
12.Activity:

13.AsyncTask 原理?

三、性能优化

1.Android UI适配;

字体使用sp,使用dp,多使用match_parent,wrap_content,weight

图片资源,不同图片的的分辨率,放在相应的文件夹下可使用百分比代替。

2.app优化:(工具:Hierarchy Viewer 分析布局 工具:TraceView 测试分析耗时的)
3.App启动优化
4.布局优化(尽量不要过于复杂的嵌套。可以使用,,)
5.响应优化;;

6.内存优化:参考内存泄露和内存溢出部分

7.电池使用优化(使用工具:Batterystats & bugreport);

8.网络优化(网络连接对用户的影响:流量,电量,用户等待)可在Android studio下方logcat旁边那个工具Network Monitor检测

9.图片优化;

四、NDK和前沿技术
1.谈谈你对 JNI 和 NDK 的理解;

2.谈谈你对 JNIEnv 和 JavaVM 理解;

3.怎么定位 NDK 中的问题和错误;

  1. 静态注册和动态注册;

5.API

有的变态题目还是会考验你一些 API 的运用,比如怎么在 JNI 里面调用 Java 的方法,怎么在 JNI 里面抛异常等等。所以一些 API 还是要熟悉一下的,大致都是什么功能,名字大致是啥呀,这个太多了,就不详细介绍了。

五、Flutter;

希望可以养成一个终身学习的习惯,技术是永无止境的。

上一篇下一篇

猜你喜欢

热点阅读