破解

  • 需要使用到的工具(mac或者乌班图都行)

1:atom或者vscode(smali代码编辑器)
2:Android studio(查看报错信息和可以将java代码编译为smali代码,方便打日志查看)
3:010editor16进制编辑器(用于更改so文件)
4:IDAPro(用于查看so文件,不能保存不然就会多一些莫名其妙的文件,不删除的话打包会报错)
5:jadx(反编译查看java代码逻辑)
  • 清除包名校验(如有

1:检查so文件(需要使用IDApro进行查看和010editor进行更改)
2:找checkpackeg或者onload文件名,如果没有就一个一个文件看(可以将文件内容转成伪代码,方便查看逻辑,tabel)
3:找到有和包名有关的逻辑之后,搜索所在位置并复制16进制的数据(复制之后去找在线转换网站看看是否和伪代码一样)
4:确定好位置之后,由在线转换网站转换出你想要的逻辑之后使用010editor编辑器进行更改so文件(改好之后用iea重新打开查看逻辑)
5:检查java文件(使用开发工具查看当前的activity,反编译之后查看检查包名的逻辑)
6:直接全局搜索getpackagename慢慢找最有可能的位置
  • so文件破解补充

1:打开ida之后等so文件加载完成使用shift+f12 ctrl+f打开全局搜索
2:搜索signature(签名),packagname(包名)或者packageinfo(程序信息)
3:查找到之后crtl+x进入方法,转换为伪代码之后就可以进行更改
4:更改方法的时候能修改返回值的情况下就修改返回值,无法修改返回值就修改引用的判断条件
  • 删除VIP逻辑

1:去找Activity,通过安装在手机端的开发工具检查布局ID去定位到VIP逻辑的activity
2:使用jadx进行反编译观察java代码逻辑,找到进行购买的位置,购买成功之后的回调进行了什么操作,一步步跟进,知道找到将用户设置为VIP的位置
3:查看设置VIP的条件是什么对条件进行操作,取反或者删掉条件
4:去找带有VIP的功能(当用户是VIP的时候会有什么改变,去找状态或者图片改变的逻辑,顺藤摸瓜)
5:如果破解了VIP之后,VIP图标没有消失就让布局隐藏(android:visibility="gone")
  • 删除广告

1:先全局搜索ads,通过查看文件名确定有哪些sdk带广告的,定位好之后进行删除
2:搜索广告初始化的方法或者回调的方法,比如.load()或者.show()之类的方法直接注释掉
3:回调的话一般就会死success或者error什么的,根据具体方法名也能看个大概
4:注释掉引用的地方之后直接删除sdk 比如谷歌的一般叫com/google/ads,删除掉之后再进行测试,如果不出现广告并且app功能正常则删除干净
  • 测试apks是否正常使用(命令)

 1:签名文件生成 注意时间要够长 365不够:keytool -genkeypair -v -keystore your_keystore_filename.keystore -keyalg RSA -keysize 2048 -validity 3650 -alias your_alias_nam
 2:生成设备配置json文件:buildaab --get-device
 3:apk转aab并签名:buildaab  a.apk --sign=release.keystore --pwd=zxcvbnm --output=bundle
 4:aab导出apks:buildaab --export-apks --input=app.aab --sign=test.keystore --pwd=123456
 5:安装apks:buildaab --install-apks=app.apks