Вы можете запустить сумму md5 против того, что вы знаете как оригинальный apk, и предположительно пиратской версии, и сравнить их. Это только гарантирует, что версия с подозрением на изменение была изменена , но не говорит вам, как именно.
Другая вещь, которую вы, вероятно, могли бы сделать, хотя я сам не пробовал, но выглядит многообещающе, это что-то вроде this , где вы теоретически сможете искать имена классов, такие как Smailhook и т. Д., И узнайте, существуют ли они. Эти идеи должны, по крайней мере, указать вам правильное направление для расследования, но они могут не охватывать все основания.
РЕДАКТИРОВАТЬ: Если вы хотите выполнить что-то подобное во время выполнения (я не знал, что вы захотите сделать это - думал, что вы имеете в виду конкретную копию приложения, которое вы подозревали, в автономном режиме ) вы можете попробовать что-то вроде Class.forName()
метода. Нечто подобное или один из других методов загрузчика классов должен помочь в поиске классов в искомом файле .dex, и вы можете поймать NoClassDefFoundError
знать, что все прошло хорошо. Если класс найден с именем, которое вы ищете, вы можете справиться с этим по своему усмотрению - завершить программу, нажать веб-сервис, в котором есть дБ мошеннических приложений и т. Д.