Smali 速查 · 新版核心
新版 Kernel 将配置移到了 Kernel/config/kernel 类中。
你只需要在 静态构造器 里找到 const-string 并替换。
// 类路径:LKernel/config/kernel;
.class public LKernel/config/kernel;
.super Ljava/lang/Object;
// 静态字段 (APP_ID 不再是 final)
.field private static APP_ID:Ljava/lang/String;
// 静态构造器 <clinit> 中赋值
.method static constructor <clinit>()V
const-string v0, "7560F84BF2F6" // 改这里
sput-object v0, LKernel/config/kernel;->APP_ID:Ljava/lang/String;
return-void
.end method
新版变化: APP_ID 在 <clinit> 中通过 const-string 赋值,不再是字段直接初始化。改这里就对了。
1
打开 APK · 定位 DEX
使用 MT 管理器 打开客户端 APK,进入 classes.dex 文件(或多个 dex,搜索类名即可)。
MT 管理器支持 DEX 搜索,直接搜 Kernel/config/kernel 就能快速定位。
2
找到 Kernel/config/kernel · 修改 APP_ID
核心操作
在 <clinit> 中找到 const-string,把里面的值替换成你自己的 AppID。
.method static constructor <clinit>()V
.registers 1
# 只需要改这一行
const-string v0, "7560F84BF2F6" // 换成你的 AppID
sput-object v0, LKernel/config/kernel;->APP_ID:Ljava/lang/String;
return-void
.end method
AppID 在哪? 在应用管理页面可以复制,格式类似 7560F84BF2F6。只改这一行,其他不动。
3
确认 getAppId() 方法
确保 getAppId() 方法正确返回 APP_ID(一般无需修改)。
.method public static getAppId()Ljava/lang/String;
.registers 1
# 读取 APP_ID 并返回
sget-object v0, LKernel/config/kernel;->APP_ID:Ljava/lang/String;
return-object v0
.end method
这个方法不需要改,它会自动返回上面定义的 APP_ID。确认它存在就行。
4
重打包并测试
修改完成后保存,MT 管理器会自动重编译 DEX。然后重新签名 APK 并安装测试。
提示: 如果签名后安装失败,请检查是否使用了 V2 签名方案。
接入完成
回到应用管理页面,开始创建卡密和管理你的应用吧!
返回应用管理