首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Android
订阅
1487658719000
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 0订阅
一篇文章带你领略Android混淆的魅力
在 Android 日常开发过程中,混淆是我们开发 App 的一项必不可少的技能。只要是我们亲身经历过 App 打包上线的过程,或多或少都需要了解一些代码混淆的基本操作。那么,混淆到底是什么?它的好处有哪些?具体效果如何?别急,下面我们来一一探索它的"独特"魅力🐳。 混淆的好…
彻底理解安卓应用无响应机制
不论从事安卓应用开发,还是安卓系统研发,应该都遇到应用无响应(ANR,Application Not Responding)问题,当应用程序一段时间无法及时响应,则会弹出ANR对话框,让用户选择继续等待,还是强制关闭。 绝大多数人对ANR的了解仅停留在主线程耗时或CPU繁忙会导…
Android 怎么就不卡了呢之Choreographer
针对Android UI不流畅的问题,Google提出了Project Butter对Android的显示系统进行了重构。 这篇文章我们主要聊一聊Choregrapher,后续的我们写关于其他。 界面的显示大体会经过CPU的计算-> GPU合成栅格化->显示设备显示。我们知道A…
AOP 最后一块拼图 | AST 抽象语法树 —— 最轻量级的AOP方法
Aspect 语法难懂?ASM 字节码操作繁琐?APT 难以精准找到切入点?你该试试 AST 了!编辑器级别,效率高,更轻量。 这就是抽象语法树 AST。AST(abstract syntax tree)即抽象语法树,是源代码的抽象语法结构的树状表现形式,每一个节点代表一个语法…
关于Java中的锁与线程间通信
公平锁:在并发环境中,每个线程在获取锁时会先查看此锁维护的等待队列,如果为空,或者当前线程是等待队列中的第一个,就占用锁,否则就会加入到等待队列中,以后会按照FIFO的规则从队列中等待被取到。 非公平锁:非公平锁比较粗鲁上来就直接尝试占有锁,如果尝试失败,就在采用类似公平锁的方…
Android 架构之高可用移动网络连接
读者好,前面我们在《Android 架构之网络连接与加速》和《Android 架构之长连接技术》两篇文章中,讲解了Http短连接、TCP长连接、连接复用与速度优化、数据压缩等方面的知识点。不过,真实的网络环境是很复杂的,存在各种各样的因素会导致网络服务不可用,比如DNS劫持、服…
【AAC 系列四】深入理解架构组件:ViewModel
0. 前言 在上一篇 LiveData 原理分析一文中,我们提到了 ViewModel ,它跟 LiveData 配合能够把价值发挥到最大。 这一篇,我们就来深入浅出一下 ViewModel ,来讲讲 ViewModel 的使用方式、生命周期、以及它的实现原理。 1. View…
深入剖析Java重入锁ReentrantLock的实现原理
Pepper Metrics是我与同事开发的一个开源工具(https://github.com/zrbcool/pepper-metrics),其通过收集jedis/mybatis/httpservlet/dubbo/motan的运行性能统计,并暴露成prometheus等主流…
【需求解决系列之四】Android App 在线 自动更新(适配到9.0)
其实每个Android App都应该有一个App在线更新的功能,这样才能及时的通知用户去更新最新版本的App。这个功能其实说起来比较简单,因为流程大家都懂!但是要真正的实现,还是要考虑很多东西的!因为项目的需要,对之前已经开源的库做了下升级重构,下面就这个做个简单的介绍。 使用…
Android 进程通信Binder机制
想写篇关于Binder的文章,可对其一无所知,无从下手。在阅读了大量的优秀文章后,心惊胆战的提笔,不怕文章被贻笑大方,怕的是误人子弟!望各位大佬抽空阅读本文的同时,能够对文章的知识点持怀疑态度,共同探讨,共同进步! 日常开发中,通过Intent携带数据跳转Activity时,数…