事情起因
我是一名程序员,我2016年7月就职于杭州某某公司,从事安卓开发,先后担任过移动研发主管,项目部技术主管一职。
因为疫情原因,年后全公司都在家办公,2020年2月24日本应是很开心的一天,因为单位提前通知这天要去公司上班;而等待我的是裁员通知。
2020年2月21日上午人事通知我,CTO要找我聊,于是上午10点左右,HR,CTO,我,三个人钉钉上开始语音,CTO做了些铺垫,告诉我这对他们是很艰难的选择,说大家都很优秀,除了我被裁掉,还有其它人。
我表示理解公司的决策,于是CTO让人事继续和我聊补偿事宜,自己先退了出聊天。
HR女士告诉我,2月24日是我最后一天工作,我所在的整个部门解散了,之前自己提早知道了裁员的消息,看我在群里处理事情认真负责的工作态度,自己觉得很感动(HR女士能这样讲,
我当时听到也很感动,但紧接着后面又一次的电话沟通,证明这是打感情牌,仅此而已)。
2020年2月24日,我到公司上班,想到在这个公司工作了3年多,到最后人事这样说话,虽然很难过,但也觉得释然了,没什么留恋的了,想着尽快办完离职,结束这趟行程,
好好整理下自己,开始下份工作,哪里都精彩,能屈能伸是好汉。
接下来几个月开启找工作之旅,索性皇天不负苦心人,2个月后找到了自己比较满意的工作,按照之前承诺,给大家做一遍分享!
Android初级-高级的面试题目 一些整理
基础
-
谈谈Activity的生命周期
-
介绍不同场景下Activity生命周期的变化过程
-
Activity销毁但Task如果没有销毁掉,当Activity重启时这个AsyncTask该如何解决?
-
Asynctask为什么要设置为只能够一次任务
-
若Activity已经销毁,此时AsynTask执行完并返回结果,会报异常么?
-
内存不足时,系统会杀死后台的Activity,如果需要进行一些临时状态的保存,在哪个方法进行
-
介绍Activity 四中launchMode:
-
LaunchMode使用场景
-
如何把一个应用设置为系统应用
-
Activity,Window,View三者的联系和区别?
-
Activity启动Service的两种方式
-
Android两个应用能在同一个任务栈吗?
-
Fragment是什么?你曾经遇到哪些有关Fragment的问题?
-
Fragment生命周期
-
如何实现Activity窗口快速变暗
-
Fragment重叠问题
-
是否使用过本地广播,和全局广播有什么区别?
-
注册广播的几种方法?
-
为什么Android引入广播机制?
-
BroadCastReceiver的安全性问题
-
了解IntentServices吗?
-
Service的onCreate运行在哪个线程中?
-
提升Service进程优先级
-
介绍Android下的数据存储方式
-
ContentProvider是如何实现数据共享
-
如何将SQLite数据库(dictionary.db文件)与apk文件一起发布?
-
Webview中的漏洞
-
Service和Activity通信
-
如何保证Service在后台不被kill
-
谈谈你对Android中Context的理解
-
RemoteView的应用
-
Android中如何获得手机的唯一标示.
-
Android应用中验证码登录都有哪些实现方案
-
为什么要设计Bundle而不是直接使用Map?
-
Android中XML解析方式的比较急优缺点
布局相关
-
LinearLayout和RelativeLayout性能对比
-
屏幕适配相关
-
dp, dip, dpi, px, sp是什么意思以及他们的换算公式?layout-sw400dp, layout-h400dp分别代表什么意思
-
布局优化
-
mipmap文件夹和drawable文件夹的区别
-
ListView卡顿的原因以及优化策略
-
如何实现一个局部更新的ListView
-
如何实现ListView多种布局
-
ViewHolder为什么要被声明成静态内部类
进程,线程
-
有哪些进程通信的方式?
-
AIDL是什么?
-
AIDL 体现了哪些设计思想
-
Binder机制
-
简单的说说Handler机制
动画相关
-
Android中的动画有哪些?
-
Android动画原理
-
Android属性动画特性
View绘制相关
-
SurfaceView和View的区别
-
介绍下自定义view的基本流程
-
谈谈View的绘制流程
-
自定义View执行invalidate()方法,为什么有时候不会回调onDraw()
-
如何实现一个字体的描边与阴影效果
事件传递机制
-
谈谈touch事件的传递流程
-
简单来说:
-
View中setOnTouchListener中的onTouch,onTouchEvent,onClick的执行顺序
-
Android下滑冲突的常见解决思路
高效使用Bitmap
-
谈谈你对Bitmap的理解,以及什么时候该bitmap.recycle()
反射相关
JNI系列
-
NDK是什么?
-
Android ndk主要在哪些场景下使用?有啥坑?
-
NDK开发需要注意什么?
-
使用JNI的流程?
-
如何通过JNI传递String对象
网络优化
-
移动端获取数据优化的几个点
-
如何设计一个良好的网络层?
-
如何防止重复发送网络请求
-
如何实现wap联网
测试与调试
-
如何调试Android应用程序
-
Android中常用的测试工具?
内存泄漏/内存溢出相关
-
内存泄漏问题
-
哪些情况下发生OOM
-
如何排查OOM
-
如何避免OOM
ANR错误
安全相关
-
本地存储的数据怎么加密好?比如:shared_prefs,sqlite数据,用户名,密码等.如果是aes加密,怎么保存key?
系统相关
-
Android各版本API区别
-
什么是Dalvik虚拟机
-
Dalvik虚拟机和JVM有什么区别
-
Android为每个应用程序分配的内存大小是多少
-
如何解决方法数65k问题?
-
Android系统启动流程分析
尾声
无论什么技术,热不热门,学习都是不可间断的,乘着年轻磨砺技术才是王道,不然在程序员这个后浪一波比一波汹涌的职业里混,你想吃青春饭都吃不了几年。不过,想提升是一回事,如何有效提升就是另一回事了。我工作近十年,也带过不少实习生、应届生,很多年轻人真的很努力在学,加班加点工作卖力,但也就是差点火候,还是方法不对。
什么是方法,方法就是跟着身边大佬走,多问多学,如果身边没有大佬也可以加入我们学习资源交流群,全国的小伙伴天南地北,可以一起聊天学习,更加了解这个行业情况,趋势与走向。
2056页Android面试题集2020年末大合集(含答案解析)
自行领取直达链接:【
点击获取
】
需要相关知识点可以查看我的【
GitHub
】,对于已经掌握的可以忽略以节省时间。
自行领取直达链接:【
点击获取
】
需要相关知识点可以查看我的【
GitHub
】,对于已经掌握的可以忽略以节省时间。