自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (3)
  • 收藏
  • 关注

原创 上手试试 Compose for ios

上手试试Compose for ios

2023-02-19 21:07:32 490 1

原创 聊聊 compose 的 remember

简单聊聊compose 的remember

2023-01-31 21:55:58 686

原创 聊聊 mutableStateOf

一起简单聊一聊mutableStateOf

2022-09-13 22:11:57 1793

原创 Compose约束布局的进阶使用

结合上篇文章,这里介绍一个Compose约束布局的进阶使用

2022-08-28 15:19:04 699

原创 快速上手Compose约束布局

用一个简单的效果,带领大家快速上手约束布局

2022-08-21 17:45:09 1113

原创 Lifecycle原理解析

之前虽然对Lifecycle的源码有一个大概的理解,但是感觉还是模棱两可,于是直接全面领略了一遍源码的风采。今天就由浅入深直接带大家来了解一下它的原理。如果不想看长篇源码,可以直接跳总结...

2022-07-06 10:22:46 118

原创 一文读懂LiveData 粘性事件

一文了解LiveData的粘性事件

2022-06-21 22:56:13 1325

原创 RxJava 线程切换

在上篇文章对RxJava 的工作流程进行的简单的分析,今天来分享一下线程切换的流程。如果觉得源码枯燥可以直接移至文末看图理解。

2022-06-20 09:00:00 1934

原创 RxJava浅析

今天给大家分享一些RxJava的小知识,由浅入深了地解一下它的工作流程。

2022-06-19 14:26:42 1730

原创 一文搞懂Android抓包

带你了解Android App 的抓包

2022-02-19 16:50:51 7794 3

原创 重新认识Handler

重新认识Handler这篇文章 不是带着大家去了解Handler 工作原理等这些老生常谈的问题,是主要向大家介绍Handler 的阻塞原理和消息屏障机制,这里做个提示 可以让大家按需阅读。Handler 可以说是App的心脏,推动着整个App所有事件的执行。接下来就一起探究下Handler 的阻塞和消息平屏障。阻塞机制先理解下什么叫做阻塞?比如我们定了一个外卖,我们不用一直问骑手外卖有没有送到,我们可以先继续做其他事情,骑手到了之后会给我们打电话。这个过程就是阻塞。在MessageQueue

2022-02-14 21:06:10 1217

原创 AGP7.0|kts 搞一个加固插件

每次都要手动使用工具去手动加固,非常麻烦,所以自己搞一个加固插件来提高生产力开发环境使用的AGP7.0.2 ,相比较之前的版本,改动还是蛮大的,自己也踩了不少坑。更多AGP7.0的内容可以关注一下虾哥的文章掘金:https://juejin.cn/post/7056395437544046606我们分为以下几步去完成:获取apk产物获取签名获取加固工具进行加固获取APKAGP7获取apk 的方式跟以前也大不相同了 ,我们需要借助Variant API apk 来进行获取Var

2022-02-14 21:03:25 1630

原创 Walle和加固宝的优雅结合

一个将walle 和加固融合的加固方案

2021-12-11 13:57:11 1913

原创 Dart异步任务

异步任务Dart 是单线程执行任务,支持异步操作1.Isolate2.FutureIsolate通过lsolate实现异步操作void main() { //将消息接收器中配合的发送器传给isolate Isolate.spawn(entryPoint, "发送的消息"); Isolate.spawn(entryPoint, "发送的消息2"); Isolate.spawn(entryPoint, "发送的消息3"); print('继续运行');}void ent

2021-07-30 23:19:44 306

原创 Dart基础笔记

Dart基础dynamic 可以改变赋值类型var 如果初始化确定类型,中途不可更改静态比动态类型 执行效率高final 不可以修改值,运行时确定const 编译时确定final 变量可以使用const 变量赋值dart 可以当成 java 中的int 和long 使用,如果dart超过了4个字节 就会 编译成 int 或者long ,否则 编译成 shot 或者int??= 判空… 级连 操作符 , 可以实现类似 builder 设计模式?安全操作符可选位置参数

2021-07-19 22:09:19 108

原创 Okhttp网络通信框架的使用

Okhttp框架的使用方法首先先让大家看一下,传统网络通信的连接方法,以此来说明使用okhttp框架的好处。这是URL的连接方法。 public String get(String u) throws IOException { URL url = new URL(u); HttpURLConnection conn = (HttpURLConnection) ur

2017-11-23 17:56:48 462

原创 百度人脸识别API 的使用

百度人脸识别API 的使用百度人脸识别API是一个第三方SDK,在此之前,我搜索过其他一些人脸识别的,相比较之下,我觉得百度的更加方便。 接下里,这是一个通过照片对比的demo,来教大家怎样使用百度人脸识别API。 *第一步,需要建立一个百度账号,申请自己的AppID, API Key和Secret Key 第二步,就是在官网下载SDK,导入jar包到项目中。 第三步,就是查看百度

2017-11-23 12:42:36 14159 1

原创 关于Struts2基础案例总是出现404错误的解决方法

关于Struts2基础案例总是出现404错误的解决方法 首先本人是一只小白,最近在接触struts2框架。在看着视频的学习过程中,出现了一个404的问题。 我跟着视频上的基础案例做的,数据都是一样的,在我运行的时候就总是出现404的错误,搞得我很是焦灼。!

2017-08-15 19:16:21 5549 3

Gradle 自动压缩图片资源插件

在APK打包的时候自动压缩图片资源

2022-02-14

Gradle 加固插件,

Gradle 加固插件,

2022-02-14

Reinforce.zip

一个加固插件,加固,上传蒲公英,钉钉通知 一条龙

2021-12-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除