微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何设置字段私有布尔值设置为真?

如何解决如何设置字段私有布尔值设置为真?

当我设置真值但出错时,这段代码有什么问题

原创

".field private isPro:Z"

我的套装

'''.field private isPro:Z=true'''

解决方法

在 smali/dalvik "Z" 的意思是 "boolean",在你的例子中它只定义了 类型,而不是 >价值

.field private isPro:Z

"Z" 更改为 "true" 将不起作用,因为 "true" 它不是有效类型。 如果要更改其值,则需要搜索变量isPro 的使用位置,并将0x0(假)更改/覆盖为0x1 >(真)。

,

您应该在构造函数或任何方法中使用iput-boolean,而不是在定义字段时直接赋值。

.field private isPro:Z
#assign value
const/4 v0,0

iput-boolean v0,p0,Lcom/example/YourClassPath;->isPro:Z


顺便说一句,直接分配仅适用于 static 字段,如下所示

# not 0 not 1
.field private static isPro:Z = true

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。