
Android知识
文章平均质量分 73
sgy645148995
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Android逆向入门
Android逆向工程是信息安全领域中一个重要的研究方向,结合静态分析、动态调试、代码重构等技术,广泛应用于安全审计、漏洞挖掘和应用程序修改等场景。本篇文章面向Android开发人员,主要介绍Android逆向的基本概念,如何使用常见的逆向工具(如反编译、调试器、动态分析工具等),并通过实际案例,演示Android应用的分析与修改方法,帮助参与者深入理解逆向工程的核心流程。原创 2025-04-21 11:24:30 · 1521 阅读 · 0 评论 -
几种图片加密方式及其原理
几种图片加密方式原创 2024-03-08 15:58:37 · 9325 阅读 · 1 评论 -
java中常用集合的简单介绍
【代码】java中常用集合的简单介绍。原创 2023-04-05 13:58:41 · 156 阅读 · 0 评论 -
一文简单说明LiveData实现原理
LiveData 是 Android Jetpack 架构组件之一,它是一个可观察的数据持有者类,允许组件(如 Activity、Fragment)观察数据变化并自动更新 UI。在实际应用中,组件(如 Activity、Fragment)需要实现 Observer 接口并重写 onChanged 方法,以便在数据发生变化时执行自定义操作(如更新 UI)。setValue 方法用于设置 LiveData 的值。在这个方法中,我们检查是否有关联的观察者,并调用其 onChanged 方法,通知数据变化。原创 2023-04-04 15:16:09 · 190 阅读 · 0 评论 -
一文简单说明EventBus实现原理
在这个简化版的 EventBus 中,我们使用了一个 HashMap(subscribers)来保存每个事件类型的订阅者列表。在订阅者注册时,我们会检查订阅者是否有一个名为 onEvent 的方法,该方法接受当前事件类型作为参数。如果有这样的方法,订阅者将被添加到相应的订阅者列表中。在发布事件时,我们会找到相应的订阅者列表,并使用反射调用它们的 onEvent 方法,将事件对象传递给它们。需要注意的是,这个简化版的 EventBus 实现没有考虑线程模型、订阅者方法的注解和订阅者方法的缓存等细节。原创 2023-04-04 14:34:13 · 134 阅读 · 0 评论 -
Android开源框架:Retrofit详解
ServiceMethod就像是一个中央处理器,传入Retrofit对象和Method对象,调用各个接口和解析器,最终生成一个Request,包含api 的域名、path、http请求方法、请求头、是否有body、是否是multipart等等。Retrofit的源码十分优秀,用注解的形式组合HTTP请求,通过代理接口,处理请求的逻辑,最后再执行请求。熟悉设计模式的都知道,代理模式的思想是通过一个“代理商”,让”用户“通过它处理难以处理的”事情“。它请求实现的核心在于“注解”、“动态代理”、“反射”。转载 2023-03-06 18:00:33 · 552 阅读 · 0 评论 -
Activity创建流程
它不是一个线程,它是运行在 App 进程中的主线程中的一个方法中。最终通过 WindowManagerImpl.addView -> WindowManagerGlobal.addView -> ViewRootImpl.setView -> ViewRootImpl.requestLayout 就触发了第一次 View 的布局、测量、绘制的流程。phonewindow是作为view与activity之间的一个管理工具,创建是在activity的attach方法中,作为window的一个实现类。原创 2023-02-26 16:25:26 · 560 阅读 · 1 评论 -
okhttp原理详解
一、okhttp工作的大致流程当我们通过OkhttpClient创建一个Call,并发起同步或异步请求时;okhttp会通过Dispatcher对我们所有的RealCall(Call的具体实现类)进行统一管理,并通过execute()及enqueue()方法对同步或异步请求进行处理;execute()及enqueue()这两个方法会最终调用RealCall中的getResponseWithInterc原创 2023-02-25 11:57:04 · 385 阅读 · 0 评论 -
MeasureSpec 三种模式
1.EXACTLY:精确模式,对应我们在布局文件中设置宽高时给一个具体值或者match_parent;当前的尺寸就是当前View应该取的尺寸.对应关系:match_parent—>EXACTLY。match_parent就是要利用父View给我们提供的所有剩余空间,而父View剩余空间是确定的,也就是这个测量模式的整数里面存放的尺寸。固定尺寸(100dp)—>EXACTLY.用户自己制定了尺寸大小,我们就不用再去干涉了,当然是以指定的大小为主。父容器已经为子容器设置了尺寸,子容器应当服原创 2022-04-14 17:10:31 · 586 阅读 · 0 评论