Skip to content

ActivityThread.currentApplication ​

📱 反射获取当前应用 Context,r0capture 用来取包名。

用法 ​

javascript
var packageName = Java.use("android.app.ActivityThread")
  .currentApplication()
  .getApplicationContext()
  .getPackageName();

调用链:

r0capture 的用途 ​

客户端证书导出时,用包名作 p12 文件名前缀:

javascript
'/sdcard/Download/' + packageName + uuid(10, 16) + '.p12'

形如 /sdcard/Download/com.app_a3F9c2D1b7.p12,便于区分不同 App 的证书。

为什么用 ActivityThread ​

ActivityThread.currentApplication() 是反射获取 Application 的方式,不依赖 Activity 实例(hook 时可能没有 Activity 在前台)。比 getApplicationContext 更底层可靠。

相关文档 ​

基于 VitePress 构建 · 教学用途