AK中为什么会APK回编译失败败_去百度知道提问

版权声明:署名允许他人基于夲文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (
 
 
版权声明:署名允许他人基于夲文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (

我用Android Studio做了一个简单的Demo就是单独的一个登陆界面,设置了固定的賬号密码如果输入的账号密码如设置的值一致就进行页面跳转。

这段代码我们也不难理解一开始声明的两个参数“name”和“pass”应该就是賬号和密码的输入框,分别用p1和p2表示

If-eqz是smali的语法,判断前后两个操作数是否相等相等则只需冒号后面的代码,不想等则继续往下执行

cond_0應该就是登陆失败了,我们可以找一下

既然源码都完完全全的暴露在我们面前了,正确的账号密码我们也知道了但这不是我们想要的。接下来我们对这些代码进行修改在修改之前先理一下思路,代码执行到cond_0就会登录失败那我们不让它执行到cond_0不就可以了吗?代码有两個地方会跳转至登录失败一个是判断用户名,另一个是判断密码

思路一:将if-eqz改为if-nez,if-nez与前者相对当两个比较的数不相等就往下执行,這样就算输入错误的账号密码代码也会正常往下执行。

思路二:直接将if-eqz语句删除这样代码就是从上往下按顺序执行了。

思路三:使用goto語句goto又被称为“无条件转移语句”,可以直接跳转至指定位置这样一来,我们就可以在登录按钮点击事件执行的时候就直接goto到登录成功

在这里以思路一为例,编写完成之后记得保存然后进行编译

编译完成后安装到手机上测试一下,输入错误的账号密码

版权声明:署名允许他人基于夲文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (
 
 

我要回帖

更多关于 编译失败 的文章

 

随机推荐