2022最新版《Android⾼级开发⾯试题⼤全》开源分享Activity基础相关
说下Activity⽣命周期?
Activity A 启动另⼀个Activity B 会调⽤哪些⽅法?如果B是透明主题的⼜或则是个DialogActivity呢?说下onSaveInstanceState()⽅法的作⽤何时会被调⽤?
说下 Activity的四种启动模式、应⽤场景?
了解哪些Activity常⽤的标记位Flags?
说下 Activity跟window,view之间的关系?
横竖屏切换的Activity⽣命周期变化?
如何启动其他应⽤的Activity?
Activity的启动过程?(重点)
Fragment基础相关
谈⼀谈Fragment的⽣命周期?
与Activity⽣命周期的不同?
谈谈Activity和Fragment的区别?
Fragment中add与replace的区别(Fragment重叠) getFragmentManager、getSupportFragmentManager 、getChildFragmentManager之间的区别?
FragmentPagerAdapter与FragmentStatePagerAdapter的区别与使⽤场景
Service基础相关
谈⼀谈Service的⽣命周期?
Service的两种启动⽅式?区别在哪?
如何保证Service不被杀死?能否在Service开启耗时操作?怎么做?
⽤过哪些系统Service ?
了解ActivityManagerService吗?发挥什么作⽤(重点)
Broadcast Receiver基础相关
⼴播有⼏种形式 ? 都有什么特点?
⼴播的两种注册⽅式?
⼴播发送和接收的原理了解吗?(Binder机制、AMS)
ContentProvider基础相关
ContentProvider了解多少?
ContentProvider的权限管理?
说说ContentProvider、ContentResolver、ContentObserver 之间的关系?
数据存储相关
描述⼀下Android数据持久存储⽅式?
SharedPreferences的应⽤场景?注意事项?
SharedPrefrences的apply和commit有什么区别?
了解SQLite中的事务操作吗?是如何做的使⽤SQLite做批量操作有什么好的⽅法吗?
如何删除SQLite中表的个别字段?
使⽤SQLite时会有哪些优化操作?
IPC(重点)
Android中进程和线程的关系?区别?
如何开启多进程?应⽤是否可以开启N个进程?
为何需要IPC?
多进程通信可能会出现的问题?
Android中IPC⽅式、各种⽅式优缺点,为什么选择Binder?
Binder机制的作⽤和原理?
Binder框架中ServiceManager的作⽤?
Bundle传递对象为什么需要序列化?Serialzable和Parcelable的区别?
讲讲AIDL?原理是什么?如何优化多模块都使⽤AIDL的情况?
View相关
讲下View的绘制流程?
MotionEvent是什么?包含⼏种事件?什么条件下会产⽣?
描述⼀下View事件传递分发机制?
如何解决View的事件冲突?举个开发中遇到的例⼦?
scrollTo()和scollBy()的区别?
Scroller是怎么实现View的弹性滑动?
invalidate()和postInvalidate()的区别?
SurfaceView和View的区别?
⾃定义View如何考虑机型适配 ?
Handler相关
谈谈消息机制Handler ? 作⽤?有哪些要素?流程是怎样的?
⼀个线程能否创建多个Handler,Handler跟Looper之间的对应关系?
软引⽤跟弱引⽤的区别 Handler 引起的内存泄露原因以及最佳解决⽅案
为什么系统不建议在⼦线程访问UI Looper死循环为什么不会导致应⽤卡死
使⽤Handler的postDealy后消息队列会有什么变化?
可以在⼦线程直接new⼀个Handler吗?怎么做?
Message可以如何创建?哪种效果更好?为什么?
线程(重点)相关
线程池的好处?
线程池的⼏个参数的理解,四种线程池的使⽤场景 Android中还了解哪些⽅便线程切换的类?讲讲AsyncTask的原理 IntentService有什么⽤?
直接在Activity中创建⼀个thread跟在service中创建⼀个thread之间的区别ThreadPoolExecutor的⼯作策略?
Handler、Thread和HandlerThread的差别?
ThreadLocal的原理多线程是否⼀定会⾼效(优缺点)多线程中,
让你做⼀个单例,你会怎么做
除了notify还有什么⽅式可以唤醒线程
什么是ANR ? 什么情况会出现ANR ?如何避免?
在不看代码的情况下如何快速定位出现ANR问题所在?
Bitmap相关
Bitmap使⽤需要注意哪些问题?
什么时候会回收?如果没有地⽅使⽤这个Bitmap,为什么垃圾回收不会直接回收?
⼀张Bitmap所占内存以及内存占⽤的计算 Android中缓存更新策略?
LRU的原理?
性能优化(重点)
图⽚的三级缓存中,图⽚加载到内存中,如果内存快爆了,会发⽣什么?怎么处理?
内存中如果加载⼀张500*500的png⾼清图⽚.应该是占⽤多少的内存?
WebView的性能优化 ?
免费分享源码大全Bitmap如何处理⼤图,如⼀张30M的⼤图,如何预防OOM 内存回收机制与GC算法(各种算法的优缺点以及应⽤场景);GC原理时机以及GC 对象
内存泄露和内存溢出的区别?
AS有什么⼯具可以检测内存泄露
性能优化,怎么保证应⽤启动不卡顿?
⿊⽩屏怎么处理?
强引⽤置为null,会不会被回收?
ListView跟RecyclerView的区别, ListView的adapter是什么adapter ?
LinearLayout、FrameLayout、RelativeLayout性能对⽐,为什么?
JNI相关
对JNI是否了解如何加载NDK库?
如何在JNI中注册Native函数,有⼏种注册⽅法?
你⽤JNI来实现过什么功能?怎么实现的?(加密处理、影⾳⽅⾯、图形图像处理)
设计模式相关
你所知道的设计模式有哪些?
谈谈MVC、MVP和MVVM,好在哪⾥,不好在哪⾥?
封装p层之后.如果p层数据过⼤,如何解决是否能从Android中举⼏个例⼦说说⽤到了什么设计模式?
装饰模式和代理模式有哪些区别?
实现单例模式有⼏种⽅法?
懒汉式中双层锁的⽬的是什么?两次判空的⽬的⼜是什么?
⽤到的⼀些开源框架,介绍⼀个看过源码的,内部实现过程。
Fragment如果在Adapter中使⽤应该如何解耦?
......
Android⾼级开发⾯试题以及答案整理
下⾯就是这份⾜⾜1296页的“Android⾼级开发⾯试题”,涵盖了BAT⼀线⼤⼚⾼频出现的⼤部分⾯试题。获取⽅式
2022最新版《Android⾼级开发⾯试题以及答案整理》免费分享,需要的朋友可以【】Handler相关知识
Handler Looper Message关系是什么?
Messagequeue 的数据结构是什么?为什么要⽤这个数据结构?
如何在⼦线程中创建Handler?
Handler post⽅法原理?
Android消息机制的原理及源码解析
Handler 都没搞懂,拿什么去跳槽啊?
Android Handler消息机制(解惑篇)
Android消息机制
Handler 引起的内存泄露原因以及最佳解决⽅案
为什么我们能在主线程直接使⽤Handler,⽽不需要创建Looper ?
主线程的Looper 不允许退出
Handler ⾥藏着的Callback 能⼲什么?
创建Message 实例的最佳⽅式
⼦线程⾥弹Toast 的正确姿势3.7妙⽤Looper机制
..........
Activity 相关
启动模式以及使⽤场景?
onNewIntent()和 onConfigurationChanged()
onSaveInstanceState()和 onRestoreInstanceState()
Activity 到底是如何启动的
Activity 到底是如何启动的
zygote是什么?有什么作⽤?
SystemServer是什么?有什么作⽤?
它与zygote的关系是什么?
ActivityManagerService是什么?什么时候初始化的?有什么作⽤?
Launcher是什么?什么时候启动的?
lnstrumentation是什么?和ActivityThread是什么关系?
如何理解AMS和ActivityThread之间的Binder通信?
AMS接收到客户端的请求之后,会如何开启⼀个Activity?
.........
Fragment、Service相关
Fragment⽣命周期和Activity对⽐
Fragment 之间如何进⾏通信
Fragment的startActivityForResult
Android Fragment完全解析,关于碎⽚你所需知道的⼀切
Fragment重叠,如何通信
Fragment回退栈管理
Fragment与Activity通信
Fragment重叠问题
2022最新版《Android⾼级开发⾯试题以及答案整理》免费分享,需要的朋友可以【】Fragment与ActionBar和Menultem
没有布局的Fragment—保存⼤量数据
DialogFragment的使⽤
Fragment的startActivityForResult
FragmentPagerAdapter与FragmentStatePagerAdapter的区
Fragmenti间的数据传递
Activity与Fragment⽣命周期探讨
Activity注意事项
Fragment⽣命周期探讨Fragment注意事项
Service进程保活
Service的运⾏线程(⽣命周期⽅法全部在主线程)
Service启动⽅式以及如何停⽌
ServiceConnection⾥⾯的回调⽅法运⾏在哪个线程?
Android进程保活的⼀般套路
关于Android进程保活,你所知道的⼀切
保活⼿段;⿊⾊保活;⽩⾊保活;灰⾊保活;唠叨的分割线
进程回收机制
..........
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论