静默加载
码龄10年
  • 681,456
    被访问
  • 388
    原创
  • 9,437
    排名
  • 289
    粉丝
  • 5
    铁粉
关注
提问 私信

个人简介:优秀的判断力来自于经验,但经验来自于错误的判断。在看着别人走过的路时,思考怎么走自己的路。无私奉献不是天方夜谈,有时候,我们也可以做到。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2012-07-20
博客简介:

stven_king的专栏

博客描述:
自信人生两百年、会当击水三千尺
查看详细资料
  • 3
    领奖
    总分 309 当月 3
个人成就
  • 博客专家认证
  • 获得256次点赞
  • 内容获得115次评论
  • 获得871次收藏
  • GitHub 获得156Stars
创作历程
  • 5篇
    2022年
  • 8篇
    2021年
  • 9篇
    2020年
  • 23篇
    2019年
  • 17篇
    2018年
  • 30篇
    2017年
  • 22篇
    2016年
  • 247篇
    2015年
  • 55篇
    2014年
成就勋章
TA的专栏
  • Android内功修改之源码分析学习
    付费
    7篇
  • Android进阶之路
    35篇
  • JVM学习笔记
    9篇
  • 设计模式
    1篇
  • Flutter
    5篇
  • Android
    79篇
  • Java EE
    32篇
  • Web开发
    6篇
  • 计算机网络
    3篇
  • 数据库
    9篇
  • Python
    14篇
  • PHP
    1篇
  • 码农的工具
    8篇
  • ACM水题
    146篇
  • 星晴
    9篇
  • 关于程序的设计问题
    18篇
  • 趣味数学
    11篇
  • 图论
    16篇
  • 动态规划
    19篇
  • 与ACM有关的事
    12篇
  • 网页设计
    4篇
  • Debug&Error
    7篇
  • Linux
  • RxJava
    3篇
兴趣领域 设置
  • 数据结构与算法
    数据结构
  • 移动开发
    kotlinflutterandroid studio
  • Android
    gradleandroid jetpackrxjava
  • 软件工程
    性能优化
  • 职场和发展
    面试
欢迎关注振兴的公众号
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

JNI方法注册源码分析(JNI_OnLoad|动态注册|静态注册|方法替换)

文章指在学会使用JNI方法动态注册,静态注册,方法替换,且在这个过程中稍微了解一下`native`层的动态库加载,方法加载等知识。
原创
发布博客 2022.04.28 ·
1482 阅读 ·
0 点赞 ·
0 评论

非SDK接口自动化检测工具--veridex

在Android P版本,Google对非SDK接口增加了管控。Google提供了一个静态检测工具veridex,工具会扫描 APK 的整个代码库(包括所有第三方库),并报告发现的所有使用非 SDK 接口的行为。
原创
发布博客 2022.03.04 ·
8537 阅读 ·
0 点赞 ·
0 评论

实测Android音频的焦点获取和归还

最近老板想在产品中的短视频后者直播播放的时候对于手机中的音乐播放器进行暂停播放,并且退出视频播放后手机的音乐播放器还能继续播放之前的音乐。
原创
发布博客 2022.02.09 ·
2552 阅读 ·
1 点赞 ·
0 评论

从硬件角度去理解协程

从硬件角度理解协程,电脑、主板、cpu、cpu核数、多线程。。。。。协程。
原创
发布博客 2022.02.07 ·
1570 阅读 ·
0 点赞 ·
0 评论

【亲测】Shell日期时间和时间戳相互转化

先说一下为什么写这篇文章,因为目前没有一篇文章能让我在Mac上成功执行的脚步。
原创
发布博客 2022.01.16 ·
1194 阅读 ·
1 点赞 ·
1 评论

aapt与aapt2--资源id固定和PUBLIC标记

目录前言AAPT概述资源CompileLink查看编译后的资源资源共享ids.xml概述public.xml概述资源id固定`aapt`进行`id`的固定`aapt2`进行`id`的固定R.txt转public.txtPUBLIC标记回顾思考动手实践参考:前言整片文章是围绕 tinker 的 TinkerResourceIdTask 里的知识点进行扩展的。aapt 和 aapt2 的差异(运行环境和运行结果);资源 id 的固定;进行 PUBLIC 的标记;aapt 运行环境为 gradl.
原创
发布博客 2021.07.14 ·
312 阅读 ·
1 点赞 ·
1 评论

将构建配置从 Groovy 迁移到 KTS

将构建配置从 Groovy 迁移到 KTS前言作为Android开发习惯了面向对象编程,习惯了IDEA提供的各种辅助开发快捷功能。那么带有陌生的常规语法的Groovy脚本对于我来说一向敬而远之。Kotlin DSL的出现感觉是为了我们量身定做的,因为采用 Kotlin 编写的代码可读性更高,并且 Kotlin 提供了更好的编译时检查和 IDE 支持。名词概念解释Gradle: 自动化构建工具. 平行产品: Maven.Groovy: 语言, 编译后变为JVM byte code,
原创
发布博客 2021.06.28 ·
136 阅读 ·
0 点赞 ·
3 评论

ViewPager2+Fragment操作笔记

ViewPager2+Fragment操作笔记文章目录ViewPager2+Fragment操作笔记ViewPager2简介实际操作效果RecycleView和Viewpage2的滑动冲突ViewPager2中Fragment的懒加载懒加载预加载FragmentStateAdapteronCreateViewHolderonBindViewHolderonViewAttachedToWindowFragmentStateAdapter使用获取Fragment实例异常处理ViewPager2滑动监听Tab
原创
发布博客 2021.05.14 ·
517 阅读 ·
1 点赞 ·
0 评论

Java线程池实现原理和源码分析

Java线程池实现原理和源码分析文章目录Java线程池实现原理和源码分析前言外观线程池继承关系构造函数成员变量创建线程池任务阻塞队列SynchronousQueueArrayBlockingQueueLinkedBlockingQueuePriorityBlockingQueue拒绝策略AbortPolicy 默认的拒绝策略CallerRunsPolicyDiscardPolicyDiscardOldestPolicy内核线程池的生命周期任务调度机制提交任务添加工作线程和执行任务添加工作线程执行任务工作
原创
发布博客 2021.02.19 ·
126 阅读 ·
0 点赞 ·
1 评论

修改AAR和Jar中class文件

前言最近帮助同事解决了一个比较棘手的问题,一路采坑的过程比较有意思。在此记录下来。(PS:主要原因是项目比较大,我们只有整个Android项目部分业务侧代码的开发权限。所以解决问题的一些解决问题的常规手段无法使用。)问题需求:Web页面中H5和native交互,保存base64图片。问题:使用现有的已经封装好的Hybrid协议,在最后集成测试发现部分手机无法保存成功。调试发现H5中使用原有的协议格式调用新协议,无法触发业务侧native注册的新协议的日志和断点。怀疑原有的协议格式问题,当.
原创
发布博客 2021.01.26 ·
347 阅读 ·
0 点赞 ·
0 评论

Android8.0隐式广播和自定义签名权限

前言记录一下今天同事给我分享的比较有意思的Bug,在已有的已经在AndroidManifest.xml中注册的广播在部分手机上无法通过Action隐式启动。上网搜搜资料自己写了个Demo,Mark一下!!Android官网:Oreo后台执行限制我们这里主要看对于广播的影响,摘抄一段官网上的介绍:广播限制如果应用注册为接收广播,则在每次发送广播时,应用的接收器都会消耗资源。 如果多个应用注册为接收基于系统事件的广播,则会引发问题:触发广播的系统事件会导致所有应用快速地连续消耗资源,从而降低用户体验.
原创
发布博客 2021.01.26 ·
405 阅读 ·
0 点赞 ·
0 评论

Qigsaw源码之Gradle插件解析

Android App Bundle为Qigsaw的前置依赖知识点。Android App Bundle 是Android新推出的一种官方发布格式.aab,可让您以更高效的方式开发和发布应用。借助 Android App Bundle,您可以更轻松地以更小的应用提供优质的使用体验,从而提升安装成功率并减少卸载量。转换过程轻松便捷。您无需重构代码即可开始获享较小应用的优势。改用这种格式后,您可以体验模块化应用开发和可自定义功能交付,并从中受益(PS:必须依赖于GooglePlay)。qigsaw基于AA.
原创
发布博客 2021.01.25 ·
1315 阅读 ·
1 点赞 ·
5 评论

Android中R文件ID值

Android中R文件ID值文章目录Android中R文件ID值前言知识回顾在代码中访问资源语法R文件Lib库的R文件AAR中的R文件依赖库R文件的生成R文件的数量后续疑问官网参考资料前言前端时间在学习 Qigsaw 相关的源码,思考到一个问题。动态加载的feature 包里的 资源id 是否会与主包中的 资源id 冲突。因为主包的 apk 文件不一定是和加载的feature 包是一起打包生成的,feature 包是可以进行升级的。查看 Qigsaw编译脚本对 old.apk 进行增量编译 feat
原创
发布博客 2021.01.11 ·
2625 阅读 ·
0 点赞 ·
0 评论

DiffUtil和它的差量算法

DiffUtil和它的差量算法前言学习Myers'Diff 算法是从 DiffUtils 源代码开始的,但DiffUtil和它的差量算法这篇却是文章是在写完 Myers‘Diff之贪婪算法 和 Myers‘Diff之线性空间细化 这两篇算法文章之后着手的。比较先需要学会算法才能理解代码实现并更好的进行使用。文章目录DiffUtil和它的差量算法前言DiffUtil介绍DiffUtil.DiffResultDiffUtil.DiffResultDiffUtil使用DiffUtil中Myers算法代码
原创
发布博客 2020.10.16 ·
936 阅读 ·
1 点赞 ·
0 评论

Myers‘Diff之线性空间细化

Myers’diff前言在学习完上一篇文章Myers’Diff之贪婪算法 之后,我对Android源码中的DiffUtil类进行了阅读发现其算法的实现和文章中的方式并不尽相同,而是在其基础之上再次进行的优化。所以本篇文章是以上一篇Myers’Diff之贪婪算法 文章内容基础之上对它的变体进行再次研究的过程。上一篇文章Myers’Diff之贪婪算法 讲述diff怎么从一个抽象的问题转化为数学问题,并对一些名词做了专有的定义(为解决问题的过程提供辅助),Myers'Diff之贪婪算法讲述了利用辅助的k线进
原创
发布博客 2020.10.12 ·
670 阅读 ·
1 点赞 ·
0 评论

Myers‘Diff之贪婪算法

Myers’ Diff前言写这篇文章已经拖了很久了,因为一直在看它后续的 Myers’ Diff 的变体 。最初不知道是什么时候发现 DiffUtil 对比列表 item 数据进行局部刷新,git 文件对比都用到了这个算法。上个月刚好再一次看到了就想深入了解一下。但发现发现国内的博客和帖子,对这个算法的讲述内容比较少,每篇文章都讲述了作者自己认为重要的内容,所以有一个点搞不懂的话没法整体性的进行理解。刚开始我自己就有一个点没想清楚想了好几天,我觉得程序员不能怕算法,书读百遍其义自现,阅读算法代码也是如此
原创
发布博客 2020.10.10 ·
1244 阅读 ·
3 点赞 ·
2 评论

App Startup 源码分析

文章目录集成接入实现初始化组件设置AndroidManifest条目手动初始化组件禁用单个组件的自动初始化禁用所有组件的自动初始化手动调用组件初始化程序运行Lint检查源码分析lint.jarAndroidmanifest.xmlInitializationProviderAppInitializerApp Startup总结上篇文章 非侵入试获取Context进行SDK初始化 讲述了通过ContentProvider 进行 SDK 的初始化,文章末尾引出了 App Startup 。如果一个 app .
原创
发布博客 2020.07.07 ·
359 阅读 ·
0 点赞 ·
0 评论

非侵入式获取Context进行SDK初始化

文章目录非侵入试获取Context进行SDK初始化picasso 初始化InstantRunLeakcanaryApp Startup非侵入试获取Context进行SDK初始化当我们在使用第三方SDK,或者自己进行SDK封装时,如果需要需要用到 Context 进行初始化时,一般做法就是将初始化方法暴露给调用方,让调用方在初始化SDK时,传入上下文环境。publi class App extends Application { @Override public void onCrea.
原创
发布博客 2020.07.07 ·
450 阅读 ·
0 点赞 ·
0 评论

Android内存泄漏检测工具使用手册

性能优化除过我们平时自己设计和开发之外就得考虑使用工具进行检测。Android关于能够定位和剖析问题的内存工具有很多,但不是每个工具所有场景都能覆盖到。这篇文章主要介绍LeaKCanary、shark、Android Profile、MAT、Jhat、dumpsys meminfo、GC Log等。
原创
发布博客 2020.06.05 ·
1015 阅读 ·
0 点赞 ·
0 评论

图片不需要完全加载就能获取宽高

转载地址:http://blog.jdk5.com/zh/java-get-image-size-without-loading-the-whole-data/前几天写的 Bitmap图片压缩,大图加载防止OOM 文章中讲到了图片加载到内存之前先获取图片的宽高,然后判断是否加载后会占用内存过大。这种加载前获取图片宽高的是使用 Android自带的Bitmap 提供的功能,底层是 C++ 的实现。...
转载
发布博客 2020.04.27 ·
498 阅读 ·
1 点赞 ·
0 评论
加载更多