Java 如何在Smali代码中的方法中将布尔值设置为false
只有一个布尔值需要设置为false。然后在调用此方法时返回此值。但是我没有斯马里的经验,所以我需要帮助。我将apk反编译为java代码(了解要查找什么)和Smali(编辑和重新编译)。以下是java代码中的方法:Java 如何在Smali代码中的方法中将布尔值设置为false,java,android,smali,Java,Android,Smali,只有一个布尔值需要设置为false。然后在调用此方法时返回此值。但是我没有斯马里的经验,所以我需要帮助。我将apk反编译为java代码(了解要查找什么)和Smali(编辑和重新编译)。以下是java代码中的方法: public PendingResult<Status> setMockMode(GoogleApiClient client, boolean isMockMode) { return client.zzb(new C06163(this, client,
public PendingResult<Status> setMockMode(GoogleApiClient client, boolean isMockMode) {
return client.zzb(new C06163(this, client, isMockMode));
}
.method public setMockMode(Lcom/google/android/gms/common/api/GoogleApiClient;Z)Lcom/google/android/gms/common/api/PendingResult;
.locals 1
.parameter "client"
.parameter "isMockMode"
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/gms/common/api/GoogleApiClient;",
"Z)",
"Lcom/google/android/gms/common/api/PendingResult",
"<",
"Lcom/google/android/gms/common/api/Status;",
">;"
}
.end annotation
.prologue
new-instance v0, Lcom/google/android/gms/location/internal/zzd$3;
invoke-direct {v0, p0, p1, p2}, Lcom/google/android/gms/location/internal/zzd$3;-><init>(Lcom/google/android/gms/location/internal/zzd;Lcom/google/android/gms/common/api/GoogleApiClient;Z)V
invoke-virtual {p1, v0}, Lcom/google/android/gms/common/api/GoogleApiClient;->zzb(Lcom/google/android/gms/internal/zzlb$zza;)Lcom/google/android/gms/internal/zzlb$zza;
move-result-object v0
return-object v0
.end method
代码在Smali中太复杂了,我无法理解。因此,请提供一些帮助:)希望以下内容是不言自明的
.method public setMockMode(Lcom/google/android/gms/common/api/GoogleApiClient;Z)Lcom/google/android/gms/common/api/PendingResult;
# change here 1 -> 2 to allow for another local variable v1
.locals 2
.prologue
new-instance v0, Lcom/google/android/gms/location/internal/zzd$3;
# add this line: v1 = 0; 0 is 'false'
const/4 v1, 0x0
# pass v1, which is set to 'false', instead of p2 containing isMockMode
invoke-direct {v0, p0, p1, v1}, Lcom/google/android/gms/location/internal/zzd$3;-><init>(Lcom/google/android/gms/location/internal/zzd;Lcom/google/android/gms/common/api/GoogleApiClient;Z)V
invoke-virtual {p1, v0}, Lcom/google/android/gms/common/api/GoogleApiClient;->zzb(Lcom/google/android/gms/internal/zzlb$zza;)Lcom/google/android/gms/internal/zzlb$zza;
move-result-object v0
return-object v0
.end method
.method public setMockMode(Lcom/google/android/gms/common/api/GoogleApiClient;Z)Lcom/google/android/gms/common/api/pendingreult;
#在此处更改1->2以允许另一个局部变量v1
.本地人2
开场白
新实例v0,Lcom/google/android/gms/location/internal/zzd$3;
#添加此行:v1=0;0为“假”
常数/4 v1,0x0
#通过设置为“false”的v1,而不是包含isMockMode的p2
调用直接{v0,p0,p1,v1},Lcom/google/android/gms/location/internal/zzd$3;->(Lcom/google/android/gms/location/internal/zzd;Lcom/google/android/gms/common/api/GoogleAppClient;Z)V
调用虚拟{p1,v0},Lcom/google/android/gms/common/api/GoogleAppClient;->zzb(Lcom/google/android/gms/internal/zzlb$zza;)Lcom/google/android/gms/internal/zzlb$zza;
移动结果对象v0
返回对象v0
.结束方法
@Vince Emigh请帮帮我,我知道这不是很好的翻译服务。没有好的指南可以开始学习smali。我只需要编辑这个文件。