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

Android 10 启动分析之init语法详解

目录正文ActionsServicesOptionsTriggersCommandsImports正文init.rc脚本包含5种类型,Action(动作),Commands(命令), Services(服务),Options(选项), Imports(导入)。以上这些都...

2022-12-26

Android Studio生成 Flutter 模板代码技巧详解

目录正文快捷输入AS 文件模板如何创建模板代码模板示例如何使用模板正文在开发 Flutter 时,常常需要创建新的页面或新的 Widget,每次都重新手写总是很麻烦,这篇文章介绍一些减...

2022-12-26

详解Android消息机制完整的执行流程

目录从Handler.post()说起MessageQueue.enqueueMessage()添加消息至队列中Looper.loop()分发消息MessageQueue.next()获取消息总结从Handler.post()说起Handler.post()是用...

2022-12-26

Android10 Binder原理概述深入解析

目录IPC工具介绍PipeSignmessage queueshared memorySocketAIDLHIDLIPC工具介绍Binder作为Android 众多的IPC通讯手段之一,在Framework的数据传输中起到极为关键的作用。为什...

2022-12-26

声网SDK教程Android UIKit 实时视频通话添加自定义背景

目录正文01 前期准备02 设置03 视频通话用户界面04 使用虚拟背景导入必要的依赖声明一些变量用虚拟背景加入视频通话切换虚拟背景应用虚拟背景图像应用虚拟背景色应用虚拟背...

2022-12-26

Android本地存储方法浅析介绍

目录本地存储案例原理介绍设置文本输入框存储读取数据本地存储案例该方法仅适用于保存一些比较简单的,运行时并不占用过多内存的小字段原理介绍我们需要完成这么一个 app:在文...

2022-12-26

Android开发数据结构算法ArrayList源码详解

目录简介ArrayList源码讲解初始化扩容增加元素一个元素一堆元素删除元素一个元素一堆元素修改元素查询元素总结ArrayList优点ArrayList的缺点简介ArrayList是List接口的一个...

2022-12-26

设置界面开发Preference Library数据重建机制详解

目录一.界面重建后设置项数据如何复原的?1. onSaveInstanceState()保存数据2. onRestoreInstanceState()恢复数据二.Preference的销毁重建方法是如何收到通知的呢?总结一.界面...

2022-12-26

ContentProvider客户端处理provider逻辑分析

目录引言1. 获取 provider1.1 等待 provider 发布1.2 安装 provider2. provider 实现多进程实例3. 两种 provider 区别结束引言前面一篇文章分析了 AMS 端处理 provider 的...

2022-12-26

Android广播事件流程与广播ANR原理深入刨析

目录序言一.基本流程和概念二.无序广播流程注册广播接收者流程广播通知流程三.有序广播流程四.广播ANR流程五.总结六.扩展问题序言本想写广播流程中ANR是如何触发的,但是如果...

2022-12-26

Kotlin 协程的取消机制详细解读

目录引言协程的状态取消协程的用法协程取消的有效性如何写出可以取消的代码在 finally 中释放资源使用不可取消的 blockCancellationException超时取消异步的超时和资源取消...

2022-12-26

Flutter路由框架Fluro使用教程详细讲解

目录1.Navigator使用简介2.fluro1.配置2.使用方法3.路由拦截3.封装1.Navigator使用简介使用Flutter 的Navigator 导航器可以实现页面的跳转,Navigator的使用方法简单介绍一下...

2022-12-26

Android Flutter实现自由落体弹跳动画效果

目录粒子运动概念如何保持持续运动 创建粒子对象创建粒子控制器初始化粒子创建画板多粒子实现八大行星加速度自由落体弹跳总结粒子运动概念粒子运动是将对象按照一定物理公...

2022-12-26

PowerManagerService之自动灭屏流程解析

目录前言自动灭屏自动灭屏小结延长亮屏时间结束前言PowerManagerService之亮屏流程分析 归纳了亮屏/灭屏的通用流程,PowerManagerService之手动灭屏 对手动灭屏流程进行了整...

2022-12-26

Jetpack Compose Canvas绘制超详细介绍

目录1. Canvas2. 绘制方法1. drawLine2. drawRect3. drawRoundRect4. drawImage5. drawCircle6. drawArc7. drawPath8. drawPoints3. DrawScope拓展方法1. inset2. translat...

2022-12-26

FFmpeg Principle分析Out put File 数据结构

目录struct OutputFilestruct OutputFile 字段解析struct OutputFilestruct OutputFile 是单个输出文件的管理器。之前在 parse_optgroup() 处理好的 OptionsContext o 变量...

2022-12-26

Android性能优化死锁监控知识点详解

目录前言死锁检测线程Block状态获取当前线程所请求的锁通过锁获取当前持有的线程线程启动nativePeer 与 native Thread tid 与java Thread tiddlsym与调用系统限制死锁检测...

2022-12-26

Android常用设计模式之原型模式详解

目录前言一、基本使用二、对象与集合的使用三、浅拷贝与深拷贝四、Kotlin的应用总结前言什么是原型模式?它是指创建对象的种类,并通过拷贝这些原型创建新的对象。它是用于创建...

2022-12-26

Android实现一键锁屏功能

android实现一键锁屏创建AdminReceiverimport android.app.admin.DeviceAdminReceiver;public class AdminReceiver extends DeviceAdminReceiver {}在xml中创建device_admi...

2022-12-26

Android Flutter实现视频上滑翻页效果的示例代码

目录前言PageView 组件介绍使用示例PageController 应用前言我们在短视频应用中经常会看到不停上滑浏览下一条视频的沉浸式交互效果,这种交互能够让用户不停地翻页,直到找到喜...

2022-12-26

Android垂直切换的圆角Banner与垂直指示器相关介绍与应用详解

目录一、三方库介绍二、效果展示三、实现方案(一)总体效果(二)垂直切换与圆角效果(三)垂直指示器四、详细实现讲解(一)布局文件(二)首页 Banner 相关代码(三)Banner 适配器(四)垂直指示器...

2022-12-26

Jetpack Compose状态专篇精讲

目录1.remember2.rememberSaveable3.状态提升4.状态管理将Composable作为可信来源将状态容器作为可信来源将 ViewModel 作为可信来源应用中的状态是指可以随时间变化的任何...

2022-12-26
返回顶部
顶部