一、平安人寿
1、lambda表达式基本格式
2、正则表达式基本格式
3、Touch事件分发流程
4、自定义悬浮窗,怎么自动贴到边缘,动画,坐标
5、Hybird开发,JS调用获取手机图片,入参,出参
JS怎么获取手机图片文件
方法一: JS中的bolb数据类型,这个就是byte,同JS操作file
参考文章:操作File的方式,BOLB类型
方法二: 参考文章:JS相互调用方式,传图片路径即可
Android 调用JS中的方法 mWebView.loadUrl(“javascript:setImag(‘”+path+”’)”);这样就实现了调用JS中的setImag(path)方法,并把图片的路径传给JS,并在Html中显示图片
//android 调用JS并设置图片
function setImag(path) {
document.getElementById("img").src=""+path
}
6、HTTP/HTTPS协议,GETP/POST区别,Body的格式
7、如何遍历View,获取所有子View
8、流畅度问题排查
底层原因
排查手段
优化方案
二、平安金管家
1、内存管理相关,内存泄漏,常见的现场,Bitmap优化
2、网络相关,HTTP和HTTPS差异,优化思路,TCP三次握手和四次挥手,证书验证流程,数字签名
3、View绘制流程,requestLayout和Invildate区别
4、Glide介绍,生命周期管理(透明的Fragment)
5、常见的设计模式
6、事件分发机制
1、分布、处理的机制
分发:由外层传递到内存 Window -> Activity -> ViewGroup -> View
处理:由内存到外层, 注意interceptTouchEvent的影响
2、DOWN消息是一次事件的起始,会有初始化操作,FirstTouchTarget,intercept_flag的重置,如果DOWN事件被子View消费,则FirstTouchTarget会被设置为该View,后续的MOVE和UP事件都会被该子View直接消费,无需遍历View树
3、Touch事件和Click事件的关系 Touch事件优先级更高,onTouchListener > onTouchEvent > onLongClickListener > onClickListener,优先级高的事件处理,优先级的就不再处理,即Touch事件消费了,Click事件不会再响应; Click和LongClick都是在UP事件后相应的;
4、滑动冲突如何处理 左右划由外部处理,上下划由内部处理 requestDisallowInterceptTouchEvent
7、Hanlder机制
8、流畅度优化
底层原因: 渲染机制,Vsync垂直同步,CPU,GPU,三重缓存,Choreographer
排查手段
优化方案
PDD面试
待补充
阿里中台面试 (政务方向)
项目重难点
项目架构设计
启动流程以及优化
TCP和UDP区别(车钥匙使用什么协议)
如何计算大文件的MD5值,为什么?
分块读文件进内存计算,原因是MD5算法是分为512bit作为一个chunk进行计算的,也就是说分块计算不影响最终的md5值
亿咖通科技
代理模式、适配器模式、装饰者模式区别
代理模式 -》 隔离
适配器模式 -》 兼容
装饰者模式 -》增强