ConcatAdapter源码浅析(一):RecyclerView机制回顾

分析ConcatAdapter源码之前,先来回顾一下RecyclerView的基本机制: 核心机制RecyclerView 是 Android 开发中常用的用于展示列表和网格布局的控件。它的核心机制主要包括三个组件:LayoutManager(布局管理器)、Adapter(适配器)和ViewHolder(视图持有者)。 LayoutManager(布局管理器)负责决定RecyclerView...

发布于 

在二进制之外

简单记录在LinkedIn,Engineer在编程之外的一些工作,信息已脱敏。 As a POC在Linkedin的业务迭代过程中,每个feature都会有一个POC,虽然全称是Point of Contact,可以直译为联络人/接口人,但其角色更接近于feature的owner,负责统筹开发,和其他团队沟通明确需求细节,保证项目交付。我对POC职责的理解: 在feature开发之...

发布于 

Android Java层崩溃监控机制简述(一):Crash收集篇

常见的Android崩溃有两类,一类是Java Exception异常,一类是Native Signal异常。我们将围绕这两类异常进行。对于很多基于Unity、Cocos平台的游戏,还会有C#、JavaScript、Lua等的异常,这里不做讨论。 Java代码的崩溃机制及实现Android应用程序的开发是基于Java语言的,所以首先来分析第一类Android崩溃Java Exception。...

发布于 

Bitmap源码学习:在Android中如何压缩一个Bitmap

Bitmap.createScaledBitmap源码分析123456789101112131415161718192021public static Bitmap createScaledBitmap(@NonNull Bitmap src, int dstWidth, int dstHeight, boolean filter) { // 创...

发布于 

Android机制源码分析(二):Android Util系列之SparseArray

碎碎念临近毕业,在成为一名全职android开发工程师之前,重新回顾那些重要的基础知识,这是第二篇 稀疏数组为了了解SparseArray和ArrayList的区别,需要了解一些前置知识: 稀疏数组(Sparse Array)是指数组中大部分元素为默认值(通常为0或者null)的数组。与稠密数组(Dense Array)相比,稀疏数组只存储非默认值的元素及其位置信息,从而减少了存储空间的占用...

发布于 

Android机制源码分析(一):事件分发源码浅析

碎碎念临近毕业,在成为一名全职android开发工程师之前,重新回顾那些重要的基础知识,这是第一篇 关键流程Android 的事件分发过程主要涉及三个方法:dispatchTouchEvent(), onInterceptTouchEvent(), 和 onTouchEvent()。事件分发过程遵循以下顺序: dispatchTouchEvent() :事件分发从根视图(通常是 Activ...

发布于 

Android SDK Version小结

基本概念应用向前兼容性亦作向下兼容,应用向前兼容(forward, 代指未来)更新版本的系统,几乎所有对框架 API 的更改都是新增更改,所以使用 API 任何给定版本(其 API 级别所指定版本)开发的 Android 应用均向前兼容更新版本的 Android 平台以及更高 API 级别:即在为低版本API开发(target sdkversion 较低)的应用也可在高版本API 平台上正常...

发布于 

从JVM垃圾回收机制看Android内存泄露

JVM垃圾回收机制JVM内存模型了解JVM垃圾回收机制之前,有必要先介绍JVM的内存模型机制,以阐明我们常说的JVM垃圾回收机制是从何处回收垃圾。 注:这里提到的JVM内存模型和java内存模型并不是一回事,注意区分 在Java中,我们的源代码编译后会生成以.class为后缀的字节码(在Android中会通过dx工具进一步翻译、重构、解释、压缩成Android虚拟机支持的Dex文件) Cla...

发布于 

Android Studio Sync Failed记录

背景介绍修复系统后重新安装了Android Studio,例行Hello World, 下载gradle插件时久违地碰到了Sync Failed,回想全面爬梯前被这个问题支配的恐惧,觉得有必要单开一帖记录一下。 网络环境 已爬梯,全局模式。 未配置Android Studio内部爬梯功能 build.gradle为默认配置 12345678910111213141516171819202...

发布于 

MVVM设计架构浅析

实习时用的是MVP架构,但Google官方本身已经将MVVM(Model-View-ViewModel)MV作为推荐的设计架构,在JetPack当中也推出了一系列组件来支持,简单谈一下我对MVVM的理解 MVVM架构特点 分离关注点:MVVM 将用户界面的表示(View)与业务逻辑和数据(ViewModel)分离开来,使得代码结构清晰,易于维护和扩展。ViewModel 作为连接 View ...

发布于 
13

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

本站由 @tsparrot 创建,使用 Stellar 作为主题。