首页 > 技术文章 > 1008_随记

aWay01 2019-10-08 22:26 原文

一.fragment生命周期:https://blog.csdn.net/forever_crying/article/details/8238863

 

 

 

二.activity fragment传值:

1,eventbus

2,setArguments(bundle);

3,

//宿主activity中的getTitles()方法

public String getTitles(){
return "hello";
}

//Fragment中的onAttach方法
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
titles = ((MainActivity) activity).getTitles();
}

三.service应用场景:https://blog.csdn.net/imxiangzi/article/details/76039978

一般普通的异步任务,比如网络请求,数据库或者文件相关操作,我们都会使用线程池的方式来做,因为这样使用的系统开销小,运行效率高,而且随着业务逻辑的复杂度增加,扩展性也更强。

然而,对于一些特殊场景,比如进程保活,使用第三方SDK服务比如地图,IM等,就需要使用Service来实现,因为这些服务一般与App主进程隔离开,需要运行在新进程中以防止App主进程发生异常崩溃时,牵连第三方服务也挂掉

四:service intentService:https://blog.csdn.net/matrix_xu/article/details/7974393

https://blog.csdn.net/lyj1005353553/article/details/53647121

五.activity service通信:https://blog.csdn.net/qq_28468727/article/details/52144155

六.linkedHashMap: https://www.jianshu.com/p/8f4f58b4b8ab

https://blog.csdn.net/justloveyou_/article/details/71713781

七:单例在多线程中的使用:https://blog.csdn.net/u012100371/article/details/71195453

八.okhtttp retrofit

九。handler机制:https://blog.csdn.net/wsq_tomato/article/details/80301851

1.在使用handler的时候,在handler所创建的线程需要维护一个唯一的Looper对象, 每个线程对应一个Looper,每个线程的Looper通过ThreadLocal来保证,如需了解ThreadLocal,点击查看详细讲解 ,

Looper对象的内部又维护有唯一的一个MessageQueue,所以一个线程可以有多个handler,

但是只能有一个Looper和一个MessageQueue。

2.Message在MessageQueue不是通过一个列表来存储的,而是将传入的Message存入到了上一个

Message的next中,在取出的时候通过顶部的Message就能按放入的顺序依次取出Message。

3.Looper对象通过loop()方法开启了一个死循环,不断地从looper内的MessageQueue中取出Message,

然后通过handler将消息分发传回handler所在的线程。

十.事件分发机制 内外部拦截处理冲突:

https://blog.csdn.net/guolin_blog/article/details/9097463/

https://www.jianshu.com/p/d3758eef1f72

https://blog.csdn.net/lmj623565791/article/details/38960443

十一.内外部拦截处理冲突: https://blog.csdn.net/lylodyf/article/details/52438997

https://blog.csdn.net/chunqiuwei/article/details/41084921

十二.mvp内存泄露

十三.recyclerview嵌套recyclerview 滑动冲突

十四.recyclerview加载更多实现

十五.热修复原理

十六.retrofit原理

十七.线程池

十八.动画实现 属性动画

十九.view的绘制流程

二十.activity的启动流程

冷启动 暖启动……

二十一.红黑树

二十二.单例在多线程中的使用

二十三.mvvm

二十四.list set hashtable hashmap

二十五.reactnative生命周期 mobx reactNavigation

二十六.Java线程池的启动方式

 

推荐阅读