Android 常用知识点整理(含链接)

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

你可能感兴趣的:(面试,android,android优化)