FakerAndroid icon indicating copy to clipboard operation
FakerAndroid copied to clipboard

[bug]当用Faker做带有yandex的游戏后,游戏run就全异常了

Open zhongqingsong opened this issue 2 years ago • 2 comments

当用Faker反编译了一类游戏项目,然后用AndroidStudio run起来后,就会出现游戏异常。 经过排查,发现问题在于 Faker后的项目,缺失了很多的小class(意思是,原游戏有的一些类,经过Faker打包后就缺失了)。 1、jadx:原游戏,查看所有的类都在,一切都正常。Faker后的apk,查看,很多的类找不到了。 2、AK重打包:将原游戏用AK重打包,一切正常。可以正常运行。 3、Faker打包:将游戏Faker 重打包run起来后,游戏异常。无法正常运行游戏。虽然可以通过技术手段让游戏跑起来,但是又会影响倒游戏的功能。

异常: AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/yandex/metrica/impl/ob/CD; AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/yandex/metrica/impl/ob/pu;

其中 CD 和 pu 这些类,原包都正常在的。

游戏apk: https://cdn-us01.apkcombo.com/com.yd.dinorunner/%E6%81%90%E9%BE%99%E5%BF%AB%E8%B7%913D%E2%80%94%E7%96%BE%E9%80%9F%E5%86%B2%E6%92%9E_2.3.83_apkcombo.com.apk?ecp=Y29tLnlkLmRpbm9ydW5uZXIvMi4zLjgzLzgzLmM1NjljMTJlNjIzNGRmNzllZGJjNTgwOTY3ZGZlMDliNDMyOGM5ZGMuYXBr&iat=1647857532&sig=8f177d06eb281753b03ea79be14efcab&size=122257560&from=cdn&version=latest&x-colo=%40%40%40&x-continent=NA&x-country=US&x-region=CA&x-asn=35916

zhongqingsong avatar Mar 23 '22 03:03 zhongqingsong

应该是函数数量超过了65535 所以部分函数没有打包jar。

HackerGBD avatar Mar 30 '22 08:03 HackerGBD

应该是函数数量超过了65535 所以部分函数没有打包jar。

这个怎么修复呢?这个65535的问题,貌似是apktool相关的模块里的。

zhongqingsong avatar Apr 02 '22 11:04 zhongqingsong