跳到主要内容
Apache王也道长

Apache王也道长

喜欢写一点代码,喜欢折腾

产品

正在打磨的产品

把技术文章沉淀成产品能力,也把产品研发过程继续写成文章。

开发中

Cloud Album

面向海外用户的私有云相册,围绕备份、整理和订阅体验持续打磨。

从真实产品研发出发,记录 iOS 客户端、MinIO 存储、海外支付与增长实验的完整过程。

iOS AppMinIO 存储海外订阅

技术博客

最新文章

如何检查项目依赖 License:许可证清单、兼容性与发布审查

· 阅读需 2 分钟
Apache王也道长
软件开发者与技术作者

如何检查项目中用到的License

检查项目中用到的License

添加依赖

<dependencies>
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.11.3</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
</dependencies>

许可证审查应覆盖直接依赖、传递依赖、复制进仓库的源码和前端静态资源。技术扫描只能帮助发现问题,最终是否兼容仍需结合分发方式和具体许可证条款判断。

GitHub 提交 Pull Request:Fork、分支、同步上游与代码评审

· 阅读需 1 分钟
Apache王也道长
软件开发者与技术作者

Github贡献PR六部曲

选中自己要贡献PR的仓库,点击Github右上角的fork

2. clone代码

git clone git@github.com:{username}/seata.git

高质量 PR 不只是把代码推送到远程,还应保持改动范围单一、提交信息清晰、测试通过并说明修改动机。开始前先阅读仓库的 CONTRIBUTING 和行为准则。

Frida 安装与配置:客户端、frida-server、架构与版本匹配

· 阅读需 1 分钟
Apache王也道长
软件开发者与技术作者

frida安装与配置

下载python 3.8.x

下载 frida-server

https://github.com/frida/frida/releases/download/12.8.0/frida-server-12.8.0-android-x86_64.xz

Frida 客户端与设备端服务版本应保持一致,设备 CPU 架构和权限也必须匹配。仅在自有应用或已授权目标上使用动态插桩,并保留测试范围和操作记录。

Frida获取微信消息内容

· 阅读需 1 分钟
Apache王也道长
软件开发者与技术作者

Frida获取微信消息内容

获取微信消息内容

var SQLiteDatabase = Java.use("com.tencent.wcdb.database.SQLiteDatabase");
SQLiteDatabase["insert"].implementation = function (str, str2, contentValues) {
console.log('SQLiteDatabase.insert is called:', 'str=', str, 'str2=', str2, 'contentValues=', contentValues);
var result = this["insert"](str, str2, contentValues);
console.log('SQLiteDatabase.insert result=', result);
return result;
};

目标应用升级后,类名、方法签名和参数结构都可能变化,因此示例中的定位结果不能长期复用。动态分析应限定在授权测试环境,并避免记录或上传真实用户的敏感消息。

Android Studio搭建Xposed项目

· 阅读需 1 分钟
Apache王也道长
软件开发者与技术作者

settings.gradle 在dependencyResolutionManagement添加 Xposed 会修改应用运行时行为,只应在自有设备、测试应用和获得授权的环境中使用。不同 Android、LSPosed 和目标应用版本可能导致接口变化,排查时应先记录完整版本信息。

搭建可观测平台SigNoz

· 阅读需 1 分钟
Apache王也道长
软件开发者与技术作者

使用signoz快速搭建可观测平台 快速部署完成后,应使用一条真实请求验证 trace、metric 和 log 是否按预期关联。若没有数据,应依次检查 SDK、Collector、网络、资源属性和时间同步。

深入理解计算机浮点数存储

· 阅读需 2 分钟
Apache王也道长
软件开发者与技术作者

深入理解计算机浮点数存储

根据IEEE 754 浮点标准

V = (-1)^s * M * 2^E

s: 符号 s决定这数是负数(s=1)还是正数(s=0)
M: 尾数 M是一个二进制小数
E: 阶码 E的作用是对浮点数加权,这个权重是2的E次幂

浮点数是对实数的有限近似,并非所有十进制小数都能被二进制精确表示。理解编码结构有助于解释比较误差、溢出、下溢以及金融计算中为何需要十进制定点方案。

总访问量 -- · 访客数 --