как запутать зависимые .jar в Proguard?

У меня есть библиотека Jar под названием BizLogic.jar, и я имею в виду ее в своем проекте пользовательского интерфейса. Итак, когда я запутываю, я хочу сначала запутать BizLogic.jar, а затем пользовательский интерфейс, не нарушая никаких ссылок между ними?

Возможно ли это с Proguard? Если нет, любой другой продукт, который может поддерживать это?

Спасибо


person kakopappa    schedule 14.02.2011    source источник
comment
ознакомьтесь с ответами здесь: stackoverflow.com/questions/820261/   -  person Ryan Fernandes    schedule 14.02.2011


Ответы (1)


Наиболее надежным решением было бы обрабатывать обе банки одновременно, но сохранять вывод в отдельных банках:

-injars  UI.jar
-outjars UI_processed.jar
-injars  BizLogic.jar
-outjars BizLogic_out.jar

или с выходным каталогом

-injars  UI.jar
-injars  BizLogic.jar
-outjars out

Тогда код пользовательского интерфейса и бизнес-код будут согласованы.

В качестве альтернативы вы можете применить инкрементную обфускацию:

1) Сначала обработайте BizLogic.jar со следующими дополнительными параметрами:

-printmapping BizJar.map
-dontoptimize
-useuniqueclassmembernames

2) Затем обработайте UI.jar с этой дополнительной опцией:

-applymapping BizJar.map

Инкрементное запутывание является более сложным, и иногда его сложно сделать правильно.

Все это и многое другое объясняется в руководстве по ProGuard.

person Eric Lafortune    schedule 15.02.2011