本篇文章节选自知乎问答,部分图片来自网络,文末已给出链接
网络上有很多关于TCP三次握手的解读和类比,这些都是不全面的,如下:
三次握手:
“喂,你听得到吗?”
“我听得到呀,你听得到我吗?”
“我能听到你,今天 balabala……”
在2018年的Google I/O大会上,Google向 Android 引入了新 App 动态化框架(即Android App Bundle,缩写为AAB)
现在的网络请求框架很多也很完善,但是使用中不注意还是会有内存泄漏的现象。为了避免内存泄漏,大概有两种方式:
但是最近在工作中,发现一个问题:同一个请求,会在多个页面被调用到,这就导致相同的代码包括发送请求,成功或失败回调,数据解析等会出现好几处。
如果我想把这个网络请求单独抽离出来,放到一个类里,不依赖具体的Activity,现在的网络框架回调一般都会运行在主线程,如果未及时释放资源,很容易造成内存泄漏。
本文介绍Android开发录音功能中用到的相关API和音频数据编码解码的处理
常用音频格式:
本文内容节选自《Android从小工到专家——第三章:App流畅度——多线程》,内容稍有修改
我们知道在Android应用启动时,会默认有一个主线程(UI线程),在这个线程中会关联一个消息队列,所有的操作都会被封装成消息然后交给主线程来处理。
为了保证主线程不会主动退出,会将获取消息的操作放在一个死循环中,这样,程序就不会退出.
.-' _..`.
/ .'_.'.'
| .' (.)`.
;' ,_ `.
.--.__________.' ; `.;-'
| ./ /
| | /
`..'`-._ _____, ..'
/ | | | |\ \
/ /| | | | \ \
/ / | | | | \ \
/_/ |_| |_| \_\
不知不觉已经6月8号了,回首一下5月,发现没有什么积累。给自己找个借口,是工作太忙,还是找工作太累?都不是,应该只是自己偷懒了。
待着是一天,忙碌着也是一天。所以从这篇博文开始,为自己立下三个小目标,来督促自己:
1.总结一个Java系列的文章(至少三篇)
2.总结一个数据结构和算法相关的文章(至少三篇)
3.学习Android Framework知识,总结出至少三篇
本篇主要介绍《Java的内存管理与垃圾回收》
我在之前转载过一篇Java泛型的介绍:JAVA 泛型通配符 T,E,K,V 区别,T 以及 Class
最近在开发中遇到一个场景,想简化流程,突然发现可以使用泛型。
这个场景就是,在手机上实现分页加载的功能时,把通用的数据映射成对象,然后使用泛型来替代具体业务类,从而封装出一个对应分页加载的类。