目录前言AIDLAIDL示例客户端运行日志AIDL通信过程分析bindService流程分析前言众所周知,Android进程间通信采用的是Binder机制。Binder是Android系统 独有的进程间通信方式,它是采用mmp函数将进程的用户空间与内核空间的一块内存区域进行映射,免去了一次数据拷贝,相比Linux上的传统IPC具有高效、安全的优点。本文结合A ......
268
0
0
2023-06-17
目录AutoService的使用关于SPISPI示例APT技术AutoService源码AutoService源码分析一般我们用它来自动帮我们注册APT文件(全称是Annotation Process Tool,或者叫注解处理器,AbstractProcessor的实现)。很多生成SPI文件的框架也是抄袭它的源码,可见它的作用还不小。APT其实就是基于SPI ......
449
0
0
2023-06-17
目录引言1. FlutterPlugin 创建2. 创建 Android 控件3. 注册 Android 控件4. 封装 Android 层通信交互 ‘CustomViewController’代码说明5. 在 flutter 中如何使用已注册的 Android 控件(view)代码说明如何使用这个View6. 附上 example 完整代码引言小编最近在项 ......
256
0
0
2023-06-17
目录前言1.ViewStub的优势2.ViewStub的使用属性 功能简单实战1.viewstub就是动态加载试图2.看一个简单的demo3.当调用第二次inflate的时候,会报错:文末Android ViewStub的使用注意事项前言当渲染一个活动时,这个活动的布局可能会有很多visible为invisible和gone的情况,虽然这些控件虽然现在不显示 ......
311
0
0
2023-06-16
一、背景最近因为需要做文本的字符串编码解析,所以引用了 IBM 的一个开源库。不过这个库体积实在太大,9M!讲道理,对于文本编码方式解析这种功能,如果需要使用 9M 的代码才能完成确实有些夸张。所以,我猜想这个库中应该包含了一些我并不需要的类文件。因此,我考虑从这个 jar 包当中移除这些我并不需要的类文件。使用手动删除的方式并不容易,因为文件太多,而且引用 ......
284
0
0
2023-06-15
目录正文一、效果展示二、快速使用及属性介绍快速使用具体代码主要方法介绍1、搜索框监听2、搜索列表点击事件3、改变最近(历史)搜索item背景4、动态设置热门搜索热度属性介绍SearchLayout(搜索框属性)SearchList(搜索列表属性)三、具体代码实现正文今天带来一个非常实用的自定义搜索框,包含了搜索框、热门搜索列表、最近搜索列表等常见的功能,有类 ......
242
0
0
2023-06-14
目录介绍课程目标自定义SwitchButton的Thumb和Track自定义Thumb自定义TrackSwitchButton交互事件发生时的代码运行效果开关off时开关on时介绍SwitchButton是个什么样的东西呢?其实它就是一个开关。我们在手机应用中经常使用到的。我突然想到2012年我开发Android时,竟然使用了RadioButton来做开关这 ......
347
0
0
2023-06-14
目录这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助在AndroidManifest.xml注册ACTION事件在用于接收分享的Activity里面加接收代码这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助在AndroidManifest.xml注册ACTION事件<activity android:name= ......
710
0
0
2023-06-14
目录withloadinto原理总结缓存LruCache首先引入依赖  implementation 'com.github.bumptech.glide:glide:4.12.0'  annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'下面一行 ......
313
0
0
2023-06-11
目录1. 控件说明2. API介绍3. 使用方法3.1 布局文件3.2 界面代码4. 注意事项1. 控件说明SwipeRefreshLayout是google官方推荐使用的下拉刷新的控件,如果用户想通过垂直滑动手势刷新视图的内容,就可以使用它。实例化此控件的Activity应添加一个 OnRefreshListener,以便在完成滑动刷新手势时收到通知。 S ......
375
0
0
2023-06-11
目录1. 背景2. java反射2.1 什么是反射2.2 什么情况下要用反射2.3 反射的优缺点3. Java反射机制API3.1 获取Class对象3.2 反射调用类构造方法3.3 反射调用类中方法3.4 反射类中的成员变量3.5 反射类中静态方法和变量4. 反射在Android中的应用4.1反射实现获取顶层activity的名称4.2 反射调用Syste ......
276
0
0
2023-06-11
目录1. 前言2. ProgressBar属性介绍2.1 XML属性2.2 API属性3. 水平进度条4. 圆形进度条5. 实例演示1. 前言进度条是UI界面中一种非常实用的组件,通常用于向用户显示某个耗时操作完成的百分比,进度条可以动态的显示进度,因为避免长时间地执行某个耗时操作时,让用户感觉程序失去了响应,从而更好地提高用户界面的友好性。进度条展示有两种 ......
378
0
0
2023-06-11
目录序章Retrofit构建过程创建网络请求接口实例过程执行请求过程总结序章首先引入依赖  implementation 'com.squareup.retrofit2:retrofit:2.9.0'在原理之前,我们先来回忆一下Retrofit的基本使用1、定义接口interface MyService { @GET("gall ......
309
0
0
2023-06-11
目录Android 6Android 7Android 8Android 9Android 10定位权限分区存储Android 11强制执行分区存储位置权限Android 6运行时权限动态申请,这里推荐郭霖的开源库:https://github.com/guolindev/PermissionXAndroid 7在Android 7.0系统上,禁止向你的应用 ......
477
0
0
2023-06-10
目录前言启动流程创建输入系统启动输入系统输入系统就绪结束前言之前写过几篇关于输入系统的文章,但是还没有写完,后来由于工作的变动,这个事情就一直耽搁了。而现在,在工作中,遇到输入系统相关的事情也越来越多,其中有一个非常有意思的需求,因此是时候继续分析 InputManagerService。InputManagerService 系统文章,基于 Android ......
319
0
0
2023-06-10