首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
xxx
订阅
无法找到该页
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
盘点 Android 你用着却不一定知道的设计模式(上)
本文,是在 Android 代码中去寻找「设计模式」的影子,并不会很详细地展开各个模式的定义与应用。文中选取的例子都是尽量简单易懂的,主要让大家知道平时原来自己也是用着各种设计模式,只是不知道名字而已,开始盘它! (篇幅有限且网上优秀的书籍多,所以不要想着在这一篇文章弄清楚它们…
App 竟然是这样跑起来的 —— Android App/Activity 启动流程分析
在我的上一篇文章Android 系统启动流程分析中,我们分析了系统在开机以后的一系列行为,其中最后一阶段 AMS(ActivityManagerService) 会启动 Launcher 来展示我们手机中所有已安装的应用图标,点击图标后相应的应用程序将会被系统启动运行并展示在我…
smali语法中的疑惑与易混淆点
我的研究方法是:先写一段java源代码,把它反编译成smali文件,研究两者对应的关系,如果有发现结果,还可以适当的更改源代码以验证自己的结论。这样的优点是结论是自己发现的,印象会更深刻;缺点是频繁的反编译比较繁琐,要是在AS上有即时的反编译插件就好了。 寄存方法中的内部变量使…
Smali Wiki 中文记录
Smali Github wiki 中文记录
Smali 语法解析 —— 类
上一篇学习了 Smali 的数学运算,条件判断和循环,接下来学习类的基本使用,包括接口,抽象类,内部类等等。 可以看到在当前目录 out 文件夹下生成了三个文件 Car.smali IFly.smaii 和 BMW.smali。下面逐一进行分析。 抽象类的表示没有什么特殊的地方…
按下电源键后竟然发生了这一幕 —— Android 系统启动流程分析
作为一名 Android 程序员,你有没有想过:那么复杂的 Android 系统,它是怎样运行起来的,我们的 App 又是怎样被 Android 系统加载后呈现在屏幕上的呢?Android 系统的启动是一个比较复杂的过程,涉及到了一些我们没有接触过的知识,本文将基于 Andro…
AOP 最后一块拼图 | AST 抽象语法树 —— 最轻量级的AOP方法
Aspect 语法难懂?ASM 字节码操作繁琐?APT 难以精准找到切入点?你该试试 AST 了!编辑器级别,效率高,更轻量。 这就是抽象语法树 AST。AST(abstract syntax tree)即抽象语法树,是源代码的抽象语法结构的树状表现形式,每一个节点代表一个语法…
反编译之利用AndroidStudio动态调试smali源码
反编译apk,修改AndroidManifest.xml的debug属性并在程序的入口处添加waitForDebugger代码进行调试等待。 打开系统调试总开关,使用am命令,以调试模式启动应用。 下面我将详细介绍这两种方法,到底使用哪一种方法,就取决于你们自己了。 如果没有设…
Socket编程入门(基于Java实现)
socket,又称套接字,是在不同的进程间进行网络通讯的一种协议、约定或者说是规范。 对于socket编程,它更多的时候像是基于TCP/UDP等协议做的一层封装或者说抽象,是一套系统所提供的用于进行网络通信相关编程的接口。 可以看到本质上,socket是对tcp连接(当然也有可…
JAVA 中原生的 socket 通信机制
谈谈当前环境、知识点、场景、请求模型优化等