赞
踩
又到了一年一度的金三银四黄金跳槽时节,也是互联网大厂疯狂招人的时期,现在应该有很多Android程序员已经按耐不住了。但是现在网上的面试题资料太多了,而且有些面试题已经过时甚至是漏洞百出。今天结合自己前段时间的面试经历和几位大厂大佬交流讨论总结出这份2023年Android中高级最全面试题来帮助大家轻松搞定offer。话不多说,直接上干货!!!
standard 不管有没有已存在的实例,都生成新实例
singleTop 如果发现有对应的Activity实例位于栈顶,则重复利用,否则创建实例
singleTask a)栈内复用,复用时具有clearTop机制 b)single taskAffinity in task
singleInstance a)启用一个新的栈结构,将Activity放置于栈结构中,并保证不会有其
它Activity实例进入 b)方便多个应用共享全局唯一的实例
原因 a).声明Handler为静态类,同时对于Activity的this引用封装成WeakReference
否则会导致匿名类引用了外部Activity,导致Activity不能被回收 b).如果这时对手机硬
件进行横竖屏切换,讲导致Activity被创建,却不能被回收
措施
a).public void onDestroy() { mHandler.removeCallbacksAndMessages(null); } static class MyHandler extends Handler { WeakReference<Activity > mActivityReference; MyHandler(Activity activity) { mActivityReference= new WeakReference<Activity>(activity); } @Override public void handleMessage(Message msg) { final Activity activity = mActivityReference.get(); if (activity != null) { mImageView.setImageBitmap(mBitmap); } } }
WeakRefrence => 与强引用对象的生命周期一致,不会增加引用计数
SoftReference => 内存不足时才进行回收
减少内存对象的占用
Dalvik进程。
每一个android app都会独立占用一个dvm虚拟机,运行在linux系统中。
所以dalvik进程和linux进程是可以理解为一个概念。
Framework是android 系统对 linux kernel,lib库等封装,提供WMS,AMS,bind机制,handler-message机制等方式,供app使用。
简单来说framework就是提供app生存的环境。
由于篇幅原因,以上面试题只抽取部分内容展示,需要更多章节面试题内容的可以继续往下看哦,扫描下方二维码,领取完整版。
希望这份面试题,能帮助大家把握住机会,找到自己心仪的工作!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。