1.Activity
-
说下Activity生命周期
-
Activity A 启动另一个Activity B 会调用哪些方法?如果B是透明主题的又或则是个DialogActivity呢
-
说下onSaveInstanceState()方法的作用 ? 何时会被调用?
-
Activity的启动流程
-
onSaveInstanceState(),onRestoreInstanceState的掉用时机
-
activity的启动模式和使用场景
-
Activity A跳转Activity B,再按返回键,生命周期执行的顺序
-
横竖屏切换,按home键,按返回键,锁屏与解锁屏幕,跳转透明Activity界面,启动一个 Theme 为 Dialog 的 Activity,弹出Dialog时Activity的生命周期
-
onStart 和 onResume、onPause 和 onStop 的区别
-
Activity之间传递数据的方式Intent是否有大小限制,如果传递的数据量偏大,有哪些方案
-
Activity的onNewIntent()方法什么时候会执行
-
显示启动和隐式启动
-
scheme使用场景,协议格式,如何使用
-
ANR 的四种场景
-
onCreate和onRestoreInstance方法中恢复数据时的区别
-
activty间传递数据的方式
-
跨App启动Activity的方式,注意事项
-
Activity任务栈是什么
-
有哪些Activity常用的标记位Flags
-
Activity的数据是怎么保存的,进程被Kill后,保存的数据怎么恢复的
2.Service
-
service 的生命周期,两种启动方式的区别
-
Service的两种启动方式?区别在哪
-
如何保证Service不被杀死 ?
-
Service与Activity怎么实现通信
-
IntentService是什么,IntentService原理,应用场景及其与Service的区别
-
Service 的 onStartCommand 方法有几种返回值?各代表什么意思?
-
bindService和startService混合使用的生命周期以及怎么关闭
-
用过哪些系统Service ?
-
了解ActivityManagerService吗?发挥什么作用
3.BroadcastReceiver
-
广播的分类和使用场景
-
广播的两种注册方式的区别
-
广播发送和接收的原理
-
本地广播和全局广播的区别
4.ContentProvider
-
什么是ContentProvider及其使用
-
ContentProvider的权限管理
-
ContentProvider,ContentResolver,ContentObserver之间的关系
-
ContentProvider的实现原理
-
ContentProvider的优点
-
Uri 是什么
5.Handler
-
Handler的实现原理
-
子线程中能不能直接new一个Handler,为什么主线程可以主线程的Looper第一次调用loop方法,什么时候,哪个类
-
Handler导致的内存泄露原因及其解决方案
-
一个线程可以有几个Handler,几个Looper,几个MessageQueue对象
-
Message对象创建的方式有哪些 & 区别? Message.obtain()怎么维护消息池的
-
Handler 有哪些发送消息的方法
-
Handler的post与sendMessage的区别和应用场景
-
handler postDealy后消息队列有什么变化,假设先 postDelay 10s, 再postDelay 1s, 怎么处理这2条消息
-
MessageQueue是什么数据结构
-
Handler怎么做到的一个线程对应一个Looper,如何保证只有一个MessageQueue ThreadLocal在Handler机制中的作用
-
HandlerThread是什么 & 好处 &原理 & 使用场景
-
IdleHandler及其使用场景
-
消息屏障,同步屏障机制
-
子线程能不能更新UI
-
为什么Android系统不建议子线程访问UI
-
Android中为什么主线程不会因为Looper.loop()里的死循环卡死
-
MessageQueue#next 在没有消息的时候会阻塞,如何恢复?
-
Handler消息机制中,一个looper是如何区分多个Handler的
-
当Activity有多个Handler的时候,怎么样区分当前消息由哪个Handler处理
-
处理message的时候怎么知道是去哪个callback处理的
-
Looper.quit/quitSafely的区别
-
通过Handler如何实现线程的切换
-
Handler 如何与 Looper 关联的
-
Looper 如何与 Thread 关联的
-
Looper.loop()源码
-
MessageQueue的enqueueMessage()方法如何进行线程同步的
-
MessageQueue的next()方法内部原理
-
子线程中是否可以用MainLooper去创建Handler,Looper和Handler是否一定处于一个线程
-
ANR和Handler的联系