大学生
 
- 金币
- 680
- 好评
- 0
- 信誉
- 100
|
发表于
2026-8-7 11:10:18
来自手机
|
显示全部楼层
来自 陕西
Smali拦截修复方案(你修改dex逆向场景专用,直接替换对应方法)
找到调用 getPackageInstaller() 后直接调用 asBinder() 的代码块,前置空判断:
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {v0}, Landroid/content/pm/PackageManager;->getPackageInstaller()Landroid/content/pm/PackageInstaller;
move-result-object v1
# 新增空判断
if-eqz v1, :cond_null
invoke-virtual {v1}, Landroid/content/pm/PackageInstaller;->getSessionService()Landroid/content/pm/IPackageInstaller;
move-result-object v2
if-eqz v2, :cond_null
invoke-interface {v2}, Landroid/content/pm/IPackageInstaller;->asBinder()Landroid/os/IBinder;
move-result-object v3
goto :end_logic
:cond_null
# 空对象分支,直接return或返回空binder
const/4 v3, 0x0
:end_logic |
|