17 个稳定版本 (5 个主要版本)
5.5.0 | 2024年7月3日 |
---|---|
5.4.0 | 2023年11月30日 |
5.0.2 | 2023年6月23日 |
5.0.1 | 2023年3月23日 |
0.3.0 | 2017年6月13日 |
在 开发工具 中排名 143
每月下载量 814
在 symbolic-proguard 中使用
490KB
2.5K SLoC
Rust Proguard 解析器
一个简单的Rust库,实现了基本的Proguard处理。
版本管理
我们使用 craft 发布新版本。
lib.rs
:
这个crate实现了Proguard映射文件的处理。
主要用例是重新映射类或完整的堆栈帧,但它也可以逐行解析Proguard映射文件。
uuid功能还允许获取Proguard文件的UUID。
示例
let mapping = r#"
android.arch.core.internal.SafeIterableMap -> a.a.a.b.c:
13:13:java.util.Map$Entry eldest():168:168 -> a
"#;
let mapper = proguard::ProguardMapper::from(mapping);
// re-mapping a classname
assert_eq!(
mapper.remap_class("a.a.a.b.c"),
Some("android.arch.core.internal.SafeIterableMap"),
);
// re-map a stack frame
assert_eq!(
mapper
.remap_frame(&proguard::StackFrame::new("a.a.a.b.c", "a", 13))
.collect::<Vec<_>>(),
vec![proguard::StackFrame::new(
"android.arch.core.internal.SafeIterableMap",
"eldest",
168
)],
);