2014-09-01 3 views
1

Я пишу приложение для Android. Теперь я хочу защитить классы активности. Я использую proGuard для обфускации, но когда я декомпилирую свой apk с fernflower, я могу видеть полный исходный код. Я загрузил apk из игры google и попытался декомпилировать его и не смог декомпилировать onCreate метод. Может быть, кто-то знает, как я могу защитить свой код. Возможно, пользовательский загрузчик классов? Но как я знаю, что нужно пройти путь к файлу dex, но если apk будет одеексом, моя программа будет падать.Защитите исходный код Android

+0

Возможный дубликат [Как избежать обратного проектирования файла APK?] (Http://stackoverflow.com/questions/13854425/how-to-avoid-reverse-engineering-of-an-apk-file) – Henry

ответ

1

Когда вы говорите, что можете «видеть полный исходный код», были ли запутаны ваши имена классов и переменных? Цель Proguard - сделать сложную обратную инженерию, заменив имена классов и переменных. Это не мешает кому-либо разобрать APK во что-то похожее на исходный код; это просто потенциально значительно усложняет (или требует много времени) для обратной инженерии и изменения кода.

Когда вы попытались декомпилировать другое приложение Play и не смогли увидеть декомпилированный onCreate(), возможно, была какая-то ошибка в процессах разборки. Мой ограниченный опыт работы с этими инструментами заключается в том, что они не идеальны, а иногда различные методы не могут успешно декомпилироваться в нечто, представляющее источник.

Если ваши имена классов (в частности, ваши собственные классы в отличие от классов ОС) и имена переменных не запутываются, вам необходимо исправить вашу конфигурацию Proguard.

Смежные вопросы