在一个项目中,如果存在一个设备类,具备多种通信接口,如网口,串口,CAN,IIC,SPI等。而此设备需要提供各种通信接口的打开关闭和读写方法。那么我们就可以声明一个接口包含通信需要的方法定义。然后定义不同的通信接口的实例…
分类:移动开发
Android 中进程间通信(IPC)方式总结
本文参考:Android 之 IPC 进程通信全解析 Android IPC简介 IPC是Inter-Process Communication的缩写,含义就是进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程…
Handler机制(4)-Handler常见应用场景和常见问题分析
主目录见:Android高级进阶知识(这是总目录索引) [written by Ticoo] Handler应用场景 根据前几篇的分析,根据实际的开发,我们可以总结出以下Handler的使用场景 最简单的消息发送 主线程…
Kotlin 属性
属性和 Java 类似, 可以是 var 或者 val, 可以加可见性修饰符。 声明属性的完整语法是: var <propertyName>: <PropertyType> [= <prop…
Glide加载圆角图片
第一步添加依赖 项目的gradle文件里 compile 'com.github.bumptech.glide:glide:3.6.1' 因为glide不支持直接加载Round Pictures,所有我们需要自定义Rou…
android.dexOptions.incremental
构建的时候出现这个问题 Warning:The android.dexOptions.incremental property is deprecated and it has no effect on the buil…
Android.mk简介(9)
简介 Android.mk文件是GNU Make的一小部分,它用来对Android程序进行编译。 因为所有的android.mk都在同一个GNU Make执行环境中进行执行,而Android.mk中所有的变量都是全局的。…
greenDAO系列6--会话
DaoSession类是greenDAO的关键接口之一。首先,DaoSession 提供开发者访问实体的基础操作,而DAOs提供更加完整的操作集。Sessions也管理着实…
Kotlin的扩展函数
无需依靠继承和装饰者模式来扩展一个类的功能,通过扩展的特殊声明实现 可以通过扩展函数替代工具类 一、扩展函数 把一个类的类名作为前缀,在函数内可以直接使用该类的对象 this。如扩展 Activity 的功能 fun A…
Activity页面加载流程(二)
接上一篇《Activity页面加载流程(一)》 上一篇讲了Window的创建,但其显示流程还没有讲清楚就跑路了 废话不多说,我们continue PS:英文用错了场景别笑话,谁让它是关键词字😊Ƕ…
Android进阶知识:ThreadLocal
1、ThreadLocal是什么? ThreadLocal是一个线程内部数据存储类,通过他可以在指定的线程中存储数据。存储后,只能在指定的线程中获取到存储的数据,对其他线程来说无法获取到数据。 2、ThreadLocal…
Gradle for Android 第一篇( Build.gradle入门 )
理解Gradle脚本 当然我们现在讨论的所有内容都是基于Android studio的,所以请先行下载相关工具。当我们创建一个新的工程,Android studio会默认为我们创建三个gradle文件,两个build.g…