1、service的启动方式,绑定方式,有何不同
两种启动方式,startService和bindService,startServie会一直运行,除非调用stopService或stopself
两种绑定方式,对应两种启动方式
A、代码配置,继承service,重写方法
B、manifest配置,继承service,重写方法
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658540
2、service的生命周期,启动顺序
create、startCommand、bind、unbind、rebind、destroy
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658595
3、广播的生命周期,启动顺序,启动方式,有何不同
这里的启动方式指注册方式
A、动态注册,即在代码中注册
B、静态注册,manifest注册
区别:动态注册比较方便更改和动态生成,但是activity退出即关闭,且消耗很大内存,所以一定记得注销
静态注册比较牢固,不管activity怎么样都是存在的,个人理解更多的是和application绑定,可以理解为启动程序就启动了广播
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658621
生命周期分两种
服务的生命周期,见第二点
broadcastReceiver
onReceived
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658653、https://blog.csdn.net/WalterZhoukick/article/details/104658692
4、自定义view需要重写的方法,每个方法的作用
构造函数、measure(测量View宽高)、layout(计算View的位置)、draw(视图的绘制)
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658722
5、AIDL相关知识
个人理解为跨进程通信?工作中不常用,确实不太清楚
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658750
6、事件分发机制
详情见https://blog.csdn.net/WalterZhoukick/article/details/82682221(自己写的文章,自己都能忘)
7、如何进行进程守护
和第5点、第1、2点连起来理解,通过service来跨进程保活,理论上双进程可以做到无限守护
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658787
8、进程间如何通信,线程间如何通信
进程通信
A、AIDL
B、messenger
C、contentProvider
D、socket
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658808
线程通信
A、线程锁
B、Handler
C、runOnUiThread
D、view.post
E、AsyncTask
详情见https://blog.csdn.net/WalterZhoukick/article/details/104658845(这里面没写线程锁,但是线程锁理论上可以进行简单的通信,如A、B线程,A线程完成后释放锁,其实也就是一种通信方式,如果不懂可以私信,人数多我会专门写一篇文章)
9、线程优先级问题
setPriority(1-10,越大优先级越高)
详情见https://blog.csdn.net/WalterZhoukick/article/details/104734221
10、android对https证书验证流程(SSL证书)
详情见https://blog.csdn.net/WalterZhoukick/article/details/104734221