务必掌握的Android十六进制状态管理最佳实践

目录前言我和十六进制的 “三次握手”使用十六进制前的混沌世界十六进制能很好解决这些问题十六进制运作机制十六进制状态管理实战十六进制状态存取实战小结作为...

2022-12-26

Android编辑框EditText与焦点变更监视器及文本变化监视器实现流程详解

目录一、编辑框EditText二、焦点变更监视器三、文本变化监听器一、编辑框EditText编辑框用于接收键盘输入的文字,由文本视图派生而来,除了TextView已有的各种属性和方法,EditTe...

2022-12-26

Android形状图形与状态列表图形及九宫格图片超详细讲解

目录一、图形Drawable二、形状图形三、九宫格图片四、状态列表图形一、图形DrawableDrawable类型表达了各种各样的图形,包括图片、色块、画板、背景等。包含图片在内的图形文...

2022-12-26

Android使用元数据实现配置信息的传递方法详细介绍

目录前序一、在代码中获取元数据二、给应用页面注册快捷方式前序格式<meta-data android:name="weather" android:value="xxx"/>什么场景需要使用?使用第三方SDK,需要在APP应...

2022-12-26

Android四种常见布局方式示例教程

目录一、线性布局LinearLayout有两种排序方式线性布局的权重二、相对布局RelativeLayout相对位置的取值三、网格布局GridLayout四、滚动视图ScrollView一、线性布局LinearLa...

2022-12-26

Kotlin协程之Flow异常示例处理

目录示例一.catch方法catchImpl方法二. onCompletion方法1.unsafeFlow方法2.ThrowingCollector类三. retryWhen方法示例代码如下:launch(Dispatchers.Main) { // 第一部分...

2022-12-26

Jetpack Compose Text的基本使用

目录Text基本使用富文本显示文字部分可选可点击文字TextFieldBasicTextFieldText文字是任何界面必须的元素,Compose Text 可组合项,通过设置文字、大小、颜色可以实现各种文字...

2022-12-26

Flutter Shell自动化打包解放双手

目录正文脚本运行视频打包流程图脚本目录讲解pack.sh(入口)pack_config.sh(全局配置项)脚本使用正文经过一段时间的学习和项目实践,你会发现,打包->上传蒲公英->生成二维码...

2022-12-26

Android Jetpack系列之App Startup使用详解

目录定义解决了什么问题如何解决问题使用方法1. 引入AppStartup依赖2. 实现App Startup库的Initializer接口3. 在库的AndroidManifest.xml中配置MyInitializer延迟初始化定...

2022-12-26

Android Notes思码逸问题处理记录

目录前言Static non-final field names should comply with a naming conventionJump statements should not be redundantDeprecated code should be removedUnused method...

2022-12-26

Android SharePreferences与数据库SQLite存储实现方法介绍

目录Android数据存储几种方式一、共享参数二、数据库SQLite1、数据定义语言(DDL)(1)创建表格(2)删除表格(3)修改表结构2、数据操纵语言(DML)(1)添加记录(2)删除记录(3)修改记录(4)查询记录三、...

2022-12-26

Android开发Flutter 桌面应用窗口化实战示例

目录前言一、应用窗口的常规配置应用窗口化自定义窗口导航栏美化应用窗口二、windows平台特定交互注册表操作执行控制台指令实现应用单例三、桌面应用的交互习惯按钮点击态...

2022-12-26

Android自定义一个view ViewRootImpl绘制流程示例

目录Android如何自定义一个view ViewRootImpl绘制流程1、自定义属性2、在res/layout/activity_main.xml文件里使用自定义view3、构造CustomView名称的view,读取自定义属性4、...

2022-12-26

使用flutter的showModalBottomSheet遇到的坑及解决

目录遇到了三个比较坑的地方我们解决完后的效果如下解决问题一解决问题二解决问题三在使用官方的showModalBottomSheet这个组件时到目前为止遇到了三个比较坑的地方1. 无法...

2022-12-26

Opengl ES之纹理贴图使用示例

目录正文纹理坐标纹理环绕纹理过滤纹理单元Opengl中纹理的使用纹理坐标映射关系正文纹理可以理解为一个二维数组,它可以存储大量的数据,这些数据可以发送到着色器上。一般情况...

2022-12-26

Android类加载流程分析

背景由于前前前阵子写了个壳,得去了解类的加载流程,当时记了一些潦草的笔记。这几天把这些东西简单梳理了一下,本文分析的代码基于Android8.1.0源码。流程分析从loadClass开始,...

2022-12-26

Android性能图论在启动优化中的应用示例详解

目录正文1 图论的基础知识1.1 有向无环图1.2 拓扑排序1.3 拓扑排序实现2 任务管理2.1 任务启动2.2 线程管理2.2.1 wait/notify2.2.2 CountDownLatch2.2.3 任务分发2.3 我们...

2022-12-26

Android对话框AlertDialog与DatePickerDialog及TimePickerDialog使用详解

目录一、提醒对话框AlertDialog二、日期对话框DatePickerDialog第一种-点击选择日期出现日历第二种-滚动选择日期三、时间对话框TimePickerDialog方式一-出现时钟选择时间方...

2022-12-26

Compose 的 Navigation组件使用示例详解

目录正文Jetpack Compose Clean Navigation使用传递普通参数,String、Int传递多个参数传递序列化参数注册导航正文Navigation 组件支持 Jetpack Compose 应用。我们可以在利...

2022-12-26

kotlin android extensions 插件实现示例详解

目录前言原理浅析总体结构源码分析插件入口配置编译器插件传参编译器插件接收参数注册各种ExtensionIrGenerationExtensionExpressionCodegenExtensionStorageComponentCont...

2022-12-26

图解 Kotlin SharedFlow 缓存系统及示例详解

目录前言replayextraBufferCapacityonBufferOverflowSharedFlow Buffer前言Kotlin 为我们提供了两种创建“热流”的工具:StateFlow 和 SharedFlow。StateFlow 经常...

2022-12-26

详解Android创建Handler的必备知识点

目录普通Handler创建异步Handler的使用及创建普通Handler创建一般下面这样创建Handler时AS会进行告警:删除线提示Handler的无参构造方法已经被@Deprecated标记,正确的做法都是...

2022-12-26

Android ConstraintLayout约束布局使用实例介绍

目录基本结构导入 compose 约束布局包约束布局使用步骤 继续约束参考线约束解耦约束集合解耦调用基本结构约束结构原理:将一个组件与约束布局关联后,通过 modifier 来指定组件...

2022-12-26

Android10 客户端事务管理ClientLifecycleManager源码解析

目录正文ClientLifecycleManagerClientTransactionTransactionExecutorexecuteLifecycleState正文在Android 10 App启动分析之Activity启动篇(二)一文中,简单地介绍了Activity...

2022-12-26

Android10 启动之SystemServer源码分析

目录正文createSystemContextstartBootstrapServicesstartCoreServicesstartOtherServices正文上一篇文章: # Android 10 启动分析之Zygote篇 (三)紧接着上一篇文章的内容,我们...

2022-12-26

Android车载多媒体开发MediaSession框架示例详解

目录一、多媒体应用架构1.1 音视频传统应用架构1.2 MediaSession 框架媒体会话媒体控制器二、MediaSession2.1 概述2.2 MediaBrowser2.2.1 MediaBrowser.ConnectionCallback...

2022-12-26

Android移除Message的方法分享

目录退出Looper循环移除Message的两种方式removeXXXMessages()移除指定的消息总结退出Looper循环移除Message的两种方式大家都知道,消息机制在Android系统运行中扮演着重要的...

2022-12-26

Android开发Jetpack Compose元素Modifier特性详解

目录正文有序性不可变性正文本文将会介绍Jetpack Compose中的Modifier。在谷歌官方文档中它的描述是这么一句话:Modifier元素是一个有序、不可变的集合,它可以往Jetpack Compo...

2022-12-26

Android Jetpack 狠活Lifecycles与LiveData使用详解

目录前言正篇结语前言今天在工作时,测试突然提了一个Bug给我,要求我将APP中某活动页面的UI界面要根据用户在由此页面跳转的下个页面操作,在返回时要实时更新。在检查代码时,发现...

2022-12-26

协程作用域概念迭代RxTask 实现自主控制

目录结合协程作用域概念迭代 RxTask 实现作用域功能作用域的设想及机制ITaskScope 的实现基于 Android 平台拓展支持总结结合协程作用域概念迭代 RxTask 实现作用域功能在过...

2022-12-26

Android JetpackCompose使用教程讲解

目录概况开启新工程文件结构根结构拆分方法官方四节课教程细节剖析data class组件代码翻译单例类适配器的替代品简单小动画概况compose 摒弃了原生开发模式中的 xml,代码结构...

2022-12-26

Android 10 启动Init进程解析

目录按下电源键时,android做了啥?init进程解析FirstStageMainSetupSelinuxSecondStageMaininit.rc 解析按下电源键时,android做了啥?当我们按下电源键时,手机开始上电,并从地址0x0...

2022-12-26

Android10 启动Zygote源码解析

目录app_mainZygoteInitpreloadpreloadClassespreloadResourcespreloadSharedLibrariesforkSystemServerapp_main上一篇文章:# Android 10 启动分析之servicemanager篇 (二)在i...

2022-12-26

Android10 App启动Activity源码分析

目录正文ActivityThread的main方法Application Context对象LaunchActivityItemClientLifecycleManagerClientTransactionTransactionExecutorexecuteLifecycleState方法正文...

2022-12-26

Kotlin对象的懒加载方式by lazy 与 lateinit 异同详解

目录前言lateinitby lazy总结前言属性或对象的延时加载是我们相当常用的,一般我们都是使用 lateinit 和 by lazy 来实现。他们两者都是延时初始化,那么在使用时那么他们两者有...

2022-12-26

Android IdleHandler基本使用及应用案例详解

目录IdleHandler基本使用案例1:执行GC案例2:粗估Activity界面渲染时间案例3:App大图监测案例4:延迟启动初始化任务IdleHandler基本使用IdleHandler原型public static interface...

2022-12-26

Android开发使用Message对象分发必备知识点详解

目录Message的创建消息分发执行的三种方式总结Message的创建消息Message一般不支持大家直接通过new的方式进行创建的,因为Message作为Android系统中使用频率非常高的一个对象...

2022-12-26

Flutter开发setState能否在build中直接调用详解

目录两种情况原理分析总结两种情况setState() 能在 build() 中直接调用吗?答案是能也不能。来看一段简单的代码:import 'package:flutter/material.dart';class TestPage exte...

2022-12-26

Android性能优化之弱网优化详解

目录弱网优化1、Serializable原理1.1 分析过程1.2 Serializable接口1.3 ObjectOutputStream1.4 序列化后二进制文件的一点解读1.5 常见的集合类的序列化问题1.5.1 HashMap1....

2022-12-26

Android线程间通信 Handler使用详解

目录前言01、定义02、使用第一步、创建第二步、发送消息第一种是 post(Runnable)第二种是 sendMessage(Message)第三步、处理消息03、结语前言Handler,可谓是面试题中的一个...

2022-12-26

Kotlin by关键字作用及使用介绍

目录1.Kotlin委托2.类委托3.属性委托3.1定义一个被委托的类3.2标准委托3.3把属性存储在映射中3.4Not Null1.Kotlin委托在委托模式中,两个对象参与处理同一请求,接受请求的对象...

2022-12-26

Kotlin List与Set和Map实例讲解

目录List可变列表mutator遍历set可变集合快速去重列表类型的转换mapList和 java 中的 list 几乎一致;getOrElse 取出对应索引,如果该索引不存在或者为 null,就返回一个 lambda...

2022-12-26

Android 10 启动之servicemanager源码解析

目录正文获取服务注册服务正文上一篇文章:Android 10 启动分析之Init篇 (一)在前文提到,init进程会在在Trigger 为init的Action中,启动servicemanager服务,这篇文章我们就来具体分...

2022-12-26

Android10 App 启动分析进程创建源码解析

目录正文RootActivityContainerActivityStartController调用startActivityUnchecked方法ActivityStackSupervisor启动进程RuntimeInit.applicationInit这个方法正文从前文#...

2022-12-26

Android集成GreenDao数据库的操作步骤

数据持久化就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失。保存在内存中的数据是处于瞬时状态的,而保存在存储设备中...

2022-12-26

详解如何实现一个Kotlin函数类型

目录接口与函数类型总结接口与函数类型业务开发中,经常会有实现一个函数式接口(即接口只有一个方法需要实现)的场景,大家应该都会不假思索的写出如下代码:interface Callback {...

2022-12-26

Android性能优化系列篇UI优化

目录前言一、UI优化1.1 系统做的优化1.1.1 硬件加速1.2 优化方案1.2.1 java代码布局1.2.2 View重用1.2.3 异步创建view1.2.4 xml布局优化1.2.5 异步布局框架Litho1.2.6 屏幕...

2022-12-26

MobLink Android 快速集成指南

目录集成前准备注册账号MobLink后台配置MobLink流程图添加配置在项目Gradle文件中注册MobSDK在项目App Module的Gradle文件中添加插件和扩展在gradle.properties中添加代码...

2022-12-26

Android线程间通信Handler源码详解

目录前言01、 用法02、源码03、结语前言在【Android】线程间通信 - Handler之使用篇主要讲了 Handler 的创建,发送消息,处理消息 三个步骤。那么接下来,我们也按照这三个步骤,从...

2022-12-26

Android RecyclerView使用入门介绍

目录添加 recycler 依赖设置单个列表项布局主布局中添加 recyclerviewRecyclerAdapter主 activity 注册成果图添加 recycler 依赖前往 build.gradle 下,添加以下依赖:implemen...

2022-12-26
返回顶部
顶部