去积分教程。
2013-08-05 08:27:49 -0400
破解开始:
1、将apk文件反编译(包括classes.dex)此步方法请百度,有很多教程……
2、根据窗口提示的字符串在反编译后的apk文件中查找,最终在strings.xml文件中找到这样一句:
<string name="detail">您的积分不足,每次使用本功能您会消耗5个积分,点击确定下载推荐应用免费获取积分</string>
PS:有两个strings.xml文件,其中一个是英文提示,另一个是中文提示,但它们定义的名字是一样的,所以找谁无所谓。
3、在public.xml文件中找到这一句:
<public type="string"name="detail"id="0x7f04000c"/>
注意"detail"的名字与类型是与前面找到的对应的。
4、到了这一步,高手可能直接在smali文件中修改代码,但smali文件很难懂,所以像我这样的菜鸟还是先看看classes.dex反编译后的代码吧!
5、在classes.dex反编译后的代码中查找2130968588(0x7f04000c的10进制),找到这个函数:
public void showDialog() {new AlertDialog.Builder(this).setTitle(2130968586).setMessage(2130968588).setPositiveButton(2130968583, new DialogInterface.OnClickListener()……showDialog()
就是上面图中积分不足的对话框。往上翻翻找有三处这样的判断:
if (SkiSet.this.mypoint<= 0) //小于等于0 { SkiSet.this.showDialog(); //调用积分不足的提示 return;
6、再次到前面反编译的apk文件夹中的smali文件夹下搜索showDialog(),共搜索到6个文件,而三次判断分别在这三个文件中:
SkiSet$4.smali;
SkiSet$5.smali;
SkiSet$6smali
代码都是这样:
if-gtz v2, :cond_0 // gtz -->gez…… invoke-virtual {v2}, LSkin/com/org/SkiSet;->showDialog()V
7、在这三个文件里把gtz改为gez,保存修改后回编译成apk文件,安装、测试可看到已成功破解。
转自52pojie
谁试试,看直接改成>=10大于或等于10就调用积分提示,行不行?
Back to home
Subscribe |
Register |
Login
| N