0

我正在玩写 smali 并收到以下错误:

W/dalvikvm( 2798): VFY: tried to get class from non-ref register v14 (type=0)
W/dalvikvm( 2798): VFY:  rejecting opcode 0x6e at 0x001c
W/dalvikvm( 2798): VFY:  rejected Lcom/test/Smali1;.doTest(Lc
om/test/Smali2;Z)Ljava/lang/String;
W/dalvikvm( 2798): Verifier rejected class Lcom/test/Smali;

我的 smali 代码:

.method  doTest(Lcom/test/Smali2;Z)Ljava/lang/String;
.registers 22
.prologue
move/16 v16, p2
move-object/from16 v15, p1
move-object/from16 v14, p0
check-cast v15, Lcom/test/Smali2;
check-cast v14, Lcom/test/Smali1;
invoke-virtual {v14}, Lcom/test/Smali1;->test()

我试图通过查看 CodeVerifier 代码找到问题,但我不确定为什么 v14 被检测为非引用寄存器。

4

0 回答 0