自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 这是一篇DeepLink入门指南

一、DeepLink是什么?二、为什需要DeepLink?三、DeepLink存在的几种形式?2、Android App Links 和 iOS Universal Links3、H5链接5、其他技术方案5.1 微信跳转四、Android中的简单实现1、在AndroidManifest文件中添加Intent过滤器2、读取Intent传递的书架3、使用ADB测试Deeplink总结。

2024-03-04 07:55:37 1200

原创 赞!Android Studio Logcat 大升级

前言最近,看到了「Android开发者」公众号的发布了最新 Android Studio Dolphin 的文章,果断开启了升级最新 Android Studio 之路。升级以后的对 Compose 和 Wear OS 模块的支持我们不一定用的着,但是新日志系统,肯定用的着。一起来感受一下新的日志系统的变化吧!一. 样式系统新日志样式和之前的外观样式区别还挺大:对比一下之前的日志,外观主要有如下改动:标签名区分更加明显不同等级的日志区分也更加明显展示的内容种类也更多二. 查询语法

2022-10-17 07:18:05 657 1

原创 Flutter中的异步方式

前言最近用 Flutter 写了一段时间的业务代码,遇到了很多之前写简单代码没遇到的问题,比如说:如何使用 Flutter 调原生如何选择状态管理和事件管理如何画出自己想要的View...上面中的很多场景,都会涉及到异步知识。我们在写 Flutter 的时候,也会需要异步处理问题,比如说文件处理、网络请求、加载图片等。一、Flutter中的异步机制isolate 这个词对于 Flutter 新手来说可能有些陌生,它其实是 Dart 中的线程机制。1. 单线程模型Dart 是一种基

2022-10-17 07:16:42 2922

原创 线程开的越多就越好吗|趣谈线程池

前言线程优化一直是启动优化中的一个必不可少的项目。作为一个 Android 程序员,你肯定希望应用启动的时候,火力全开,线程池拉满,每一个 CPU 核心满载而行。可你把线程池拉满的时候,启动时长就一定会降低吗?结果显然是否定的,之前我在进行启动优化的时候,就遇到了类似的问题。我引入了有向无环图类似的启动库后,又将线程池的数量设置为: CPU核心数 * 2 + 1看似没什么问题,后续启动时长居然还增长了一点点。为什么会出现这样的问题?我们今天就好好聊聊。一、做个实验先做个实验,在应用启动

2022-07-10 22:26:41 1349

原创 你应该知道的Android签名知识

前言最近帮测试做了一点关于签名的需求,今天就和各位同学简单聊一聊关于签名的那些事儿。如果问到 Android 为什么需要签名?大家都可能想到官网的解释:Android 系统要求所有 APK 必须先使用证书进行数字签名,然后才能安装到设备上进行更新。这是一个比较模糊的解释,简单来说,有了签名,就可以让 App 和开发者绑定。毕竟,应用那么多,别的开发者也有可能盗用你的代码,这个时候,包名和你相同,代码和你相同,怎么区分你的 App 和这些人的 App 不是同一个呢?这个时候数字签名就派上用场了

2022-06-19 21:59:39 994

原创 我常用的写作工具都在这儿了

前言经常有同学向我询问,写作的时候都有什么好用的工具。是时候分享一波了~写作工具1. typora之前我写文章的时候,都是在掘金写完文章,然后搬运到别的平台。去年开始发现这个方法行不通了,因为个别平台文章会要求你图片重新上传。现在我会在本地写好文章,使用的工具就是 Typora,这是一个特别好用的 Markdown 工具,所见即所得!写完就可以看到效果。配合上图片插件,在「偏好设置」中点击「图片栏」:即使是多个平台,挨个复制发布的时候也不用重新上传图片了,后面有多平台博客发布工具推.

2022-03-28 22:15:39 455

原创 Android IO流程你真的清楚了吗|硬核科普

前言最近在看《Linux内核设计与实现》的时候,就想着要不把知识串联一下吧。聊什么呢?今天先来聊聊 Android IO 的调用链路。说起 IO,这可真是一个很复杂的过程,里面涉及了很多内容,先是软件,最后到硬件,用一张图来表示一下吧:本文打算简单得和大伙讨论一下 IO 的流程。一、应用层作为应用开发者,我们通常是 IO 发起点,比如用户说这本小说很好看,我要下载到本地,或者,这张图拍的不错,分享给你看一下。虽然这些都是常见的 IO 场景,但是你知道有哪些 IO 吗?1. IO的分类通常

2022-03-21 12:54:48 3610

原创 谨慎hook,一个hook Transform源码导致的错误

前言上篇文章《总听说AGP,它到底做了什么?》和大家分析了 AGP(Android Gradle Plugin) 做了哪些事,了解到 AGP 就是为打包这个过程服务的。那么,本篇文章就和大家聊一聊其中的 Transform,解决一下为什么在 AGP 3.x.x 的版本可以通过反射获取的 transformClassesWithDexBuilderForXXX Task 在 4.0.0 的版本就不灵了?源码走起!一、Transform的流程读本篇文章以前,相信同学们已经具备 Transform 的

2022-03-08 12:52:11 4058

原创 总听说AGP,它到底做了什么?

目录前言一、基础准备二、AGP源码的打开方式三、代码分析第一步 寻找AppPlugin第二步 AppPlugin第三步 配置Project第四步 确认扩展第五步 创建Task第六步 配置完成后创建Task第七步 TaskManager第一次创建多个Task第八步 TaskManager第二次创建多个Task总结前言故事的开始是这样的。之前阅读《Android开发高手课》的时候,里面启动优化一栏有讲到 systrace + 函数插桩 是不错的卡顿排查方式。主要方式就是通过 Transform + As

2022-02-23 22:33:50 1834

原创 工作一年半的Android工程师教你如何准备面试复习

前言相信很多同学都会有这样的感受,前三天刚刚复习的知识点,今天问的时候怎么就讲不出个所以然了呢?本文的目的就是致力于帮助大家尽可能的建立Android知识体系,希望大家会喜欢~必读知识结构覆盖的知识点有Android、Java、Kotlin、Jvm、网络和设计模式。面向人群正在求职的中高级Android开发食用指南和大部分人一样,我在复习完第一遍Android知识的情况下,看到...

2020-04-26 10:39:53 1081

原创 APP后台服务器阿里云Win系统服务器搭建的方法

APP后台服务器阿里云Win系统服务器搭建的方法

2017-09-26 09:44:18 14025 3

RecyclerView侧滑删除

安卓侧滑删除的简单实现,适用于新手,代码注释详细,

2018-05-10

百度地图的使用简单的DEMO

百度地图demo的简单使用,可以定位到当前的位置,如果有问题,可以提出

2018-03-04

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

TA关注的人

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