随机推荐

[小知识]内存泄漏整理

什么是内存泄漏?总的来说:内存不在GC掌握之内。当一个对象已经不在使用了,本该回收时,而另外一个正在使用的对象持有它的引用而导致内存不能被回收。本该回收的对象没有被回收,而一直停留在堆内存中,这就产生了内存泄漏。Java的GC内存回收机制当对象不再有任何的引用时候才会进行回收。内存分配的...

lateinit和by lazy简单使用

前言记录一下Kotlin中lateinit和by lazy简单使用。正文lateinit为延迟初始化属性。lateinit用于延迟初始化一个var可变属性。属性类型必须是非空的且不能是原始类型(如 Int, Double)。经常在类中定义属性时class Person{   v...

Android 8.0后音频焦点处理小结

前提两个或两个以上的 Android 应用可同时向同一输出流播放音频,系统会将所有音频流混合在一起。为了避免所有音乐应用同时播放,Android 引入了“音频焦点”的概念。一次只能有一个应用获得音频焦点。音频焦点采用合作模式对,合作模式,你可以准守也可以不准守。Android建议应用遵守...

脚本 adb push apk 新版本

前言这个版本包括创建对应目录等,比之前写的更简单了。这个是同事写的哈哈哈,摘抄于此。正文@echo offecho push update apkif exist null (del null):start@adb devices | findstr "\<device\...

AIDL之注册和解注册监听器

前言在AIDL通信时,涉及到了序列化反序列化过程,会出现注册的对象和解注册的对象并不是同一对象的情况。这个是之前遇到的,忘记备注了,今天有空就摘抄于此,方便自己查阅和学习。正文比如注册监听时private CopyOnWriteArrayList<IMusicCallbackInt...

Android硬件加速

前言Android从3.0版本开始加入了硬件加速,这样就能够充分利用手机硬件GPU来提升界面的渲染效果。但是这种技术还有一些限制,比如有些开启了硬件加速的界面上无法使用Canvas的clipPath接口,一点调用就会抛出不支持的异常。现在来对硬件加速的小知识点做一些总结。硬件加速简单理解就是...