Как обфускать мой проект Android в Eclipse IDE?

Я хочу минимизировать размер моего приложения, а также избегать приложения из обратного проектирования. Может ли кто-нибудь помочь с простым ответом?

Ответ 1

Proguard является частью плагина android eclipse, поэтому вам не нужно вызывать его вручную. Вам просто нужно активировать его в своей сборке.

Чтобы включить ProGuard, чтобы он выполнялся как часть сборки Ant или Eclipse, установите свойство proguard.config в файле <project_root>/project.properties. Путь может быть абсолютным путем или контуром относительно корня проекта.

В некоторых ситуациях достаточно конфигурации по умолчанию в файле proguard.cfg. Однако для ProGuard достаточно сложно проанализировать ситуацию, и он может удалить код, который, по его мнению, не используется, но ваше приложение действительно нуждается. Вот некоторые примеры:

  • класс, на который ссылается только в файле AndroidManifest.xml
  • метод, вызванный из JNI
  • динамически привязанные поля и методы

Файл proguard.cfg по умолчанию пытается охватить общие случаи, но вы можете столкнуться с такими исключениями, как ClassNotFoundException, которое происходит, когда ProGuard удаляет весь класс, который вызывает ваше приложение.

Вы можете исправить ошибки, когда ProGuard удаляет ваш код, добавив строку -keep в файл proguard.cfg.

Ответ 2

1) Загрузите последнюю версию proguard из "http://sourceforge.net/projects/proguard/files/". Текущей последней версией является proguard4.7

2) Замените папку "bin" и "lib" в "пути вашего SDK\tools\proguard" с последними загруженными папками proguard.

3) Проверьте местоположение SDK в eclipse для пробелов в нем, и для этого перейдите в окно > Настройки > Android. Если есть пустое место, замените его на:

Патта Android SDK

4) Убедитесь, что файл proguard.cfg находится в корневой папке проекта и добавьте файл proguard.config = proguard.cfg в файле project.properties проекта android.

5) Теперь экспортируйте свой проект, чтобы получить obfusticated apk.

Ответ 3

Да, вы можете ограничить приложение для обратного проектирования, используя возможность proguard в вашем проекте. Вы должны прочитать это руководство для него Proguard для Android-приложения

и для минимизации размера приложения вы должны предъявить иск .9patch изображения и селектор.

Ответ 4

Вы можете использовать proguard для этого. Это инструмент, предоставляемый Google с той же целью. См. Официальное руководство здесь:

http://developer.android.com/tools/help/proguard.html

Ответ 5

Вы можете попробовать Dexguard https://www.guardsquare.com/dexguard, добавить больше уровней обфускации, применить строковое шифрование, шифрование классов и отражение. Это не бесплатно, но оно выходит за рамки програды.

PD) Это не спам, я не имею никакого отношения к этому продукту, просто информация.