Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.87/150: Рейтинг темы: голосов - 150, средняя оценка - 4.87
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
#1

Полная декомпиляция apk. Classes.dex в *.smali или *.java

08.11.2013, 18:17. Просмотров 27188. Ответов 28
Метки нет (Все метки)

Доброго времени суток.
Распотрошила .АРК.
Если с помощью APKtool то получаем папочку smali в файлами *.smali, если не ошибаюсь, коде асемблера. Читать и редактировать который сущий ад.
Если же путем извлечения файлов из .АРК как из ZIP архива и потом прогонки полученного Classes.dex через dex2jar - JD GUI получаем более понятный код в формате *.java.
1е Так как я в программировании на андроид я новачек хотелось бы узнать как скомпилировать получение java в smali, хотя насколько я понимаю это не так просто без дополнитенльных утилит, чтоб обратно скомпилировать в АРК с помощью APKtool.
2е Как... точнее куда закинуть получение *.java в новый проект еклипса чтоб все работало.
3е Возможно ли скомпилировать полученную пачку папок и файлов *.java обратно в Classes.dex. На какомто форуме читала об утилите dx но там толком ничего о ней не написано. Знаю только то что она должна делать то что описано в 3м пункте.

структура АРК декомпилированого в APKtool
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2013, 18:17
Ответы с готовыми решениями:

Декомпиляция apk файла
Кто нибудь пробовал декомпилировать apk файлы чужих приложений с помощью...

Apk tool и декомпиляция Android-приложений
Добрый день! Пытаюсь декомпилировать фонарик Color Flashlight.apk при помощи...

Сохранить java или jar в apk
Доброго времени суток, возможно ли сохранить проект в java под андроид ?

Нужна программа для компиляции в apk из java или байт кода
Подскажите какие программы есть в арсенале android разработчика для этих целей...

Как java код скомпилировать в apk?
Здравствуйте , интересует вариант компиляции java кода , под андроид .У меня...

28
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
08.11.2013, 19:23 #2
Этот поток красноречия довольно сложно читать...
Парой слов скажу так: разбор APK - чепуха. Собрать назад не выйдет. Разве что из любопытства.
*.smali превратить в более-менее читаемый код можно так
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
08.11.2013, 20:19  [ТС] #3
Цитата Сообщение от Bringoff Посмотреть сообщение
Этот поток красноречия довольно сложно читать...
Парой слов скажу так: разбор APK - чепуха. Собрать назад не выйдет. Разве что из любопытства.
*.smali превратить в более-менее читаемый код можно так
Конечно сложно читать если не хотеть читать... или не уметь...
В разборе есть смысл и даже больше... можно исходной код АРК получить... и очень даже читаемый если на джаве.
Собрать назад удается и оно даже работает...
Проблема в другом... в *.smali они же *.сlasses основной код, который я, пока что, не имею понятия куда пихать в еклипсе... строки поджимают, диплом сдавать надо, а с нуля писать нормальный АРК нету времени... вот и вопросы такие... если б читали...
0
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
08.11.2013, 20:41 #4
Ищи исходники программы, как показала практика к 90% бесплатного софта они есть в открытом виде на github, когда только начинал заниматься Андройдом - это оказалось самым полезным занятием.
Apk есть смысл разбирать если нужно смотреть на структуру активити отдельных, но выковыривать от туда классы... ИМХО, проще найти исходник
1
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
08.11.2013, 21:28  [ТС] #5
Цитата Сообщение от NOSC Посмотреть сообщение
Ищи исходники программы, как показала практика к 90% бесплатного софта они есть в открытом виде на github, когда только начинал заниматься Андройдом - это оказалось самым полезным занятием.
Apk есть смысл разбирать если нужно смотреть на структуру активити отдельных, но выковыривать от туда классы... ИМХО, проще найти исходник
Полезный сайт... только вот найти там что нужно не удается.
0
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
08.11.2013, 21:33 #6
Цитата Сообщение от Olmira Посмотреть сообщение
Полезный сайт... только вот найти там что нужно не удается.
Надеюсь правила не запрещают ссылки выкладывать =)
http://bit.ly/16N3Gte

Первая же ссылка очень полезная - я сам от туда много почерпнул
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
08.11.2013, 22:03  [ТС] #7
Цитата Сообщение от NOSC Посмотреть сообщение
Надеюсь правила не запрещают ссылки выкладывать =)
http://bit.ly/16N3Gte

Первая же ссылка очень полезная - я сам от туда много почерпнул
гуглить я умею)
было б там то что мне надо то не было б этой теми... нигде нету норм исходника обыкновенно справочника наподобие uFlower или Рецепты кофе 1.4...
0
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
08.11.2013, 22:16 #8
Цитата Сообщение от Olmira Посмотреть сообщение
Рецепты кофе 1.4..
Надеюсь тебе не именно кофе рецепты нужны??
Если просто пример программы справочника ищешь - то вот эта может пригодиться
https://github.com/trommlbomml/Recepty/tree/master/Recepty
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
09.11.2013, 09:44  [ТС] #9
Цитата Сообщение от NOSC Посмотреть сообщение
Надеюсь тебе не именно кофе рецепты нужны??
Если просто пример программы справочника ищешь - то вот эта может пригодиться
https://github.com/trommlbomml/Recepty/tree/master/Recepty
Этот справочник сложно назвать "примером". Там только 2а рецепта... Нужно именно посложнее на пример как в
Цитата Сообщение от Olmira Посмотреть сообщение
справочника наподобие uFlower или Рецепты кофе 1.4...
0
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
09.11.2013, 15:02 #10
Olmira, Вот. Не полные исходники, но все же можно многое почерпнуть.
0
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
09.11.2013, 17:02 #11
Если снова вернуться к полной декомпиляции приложения - я когда-то пробовал. Не стоящая это затея. За эти два дня, что вы тут ругаетесь, можно было вполне приличный каркас приложения сделать. Безо всякой там декомпиляции, ВОРОВСТВА ЧУЖИХ ИСХОДНИКОВ (!). Подумайте над этим.
1
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,732
10.11.2013, 15:47 #12
Bringoff, на всякий случай, хотел дать ссылку на пример, когда реинжиниринг оказался полезен.
История реверс-инжиниринга одного SMS трояна для Android
1
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
10.11.2013, 17:18 #13
Цитата Сообщение от CoolMind Посмотреть сообщение
Bringoff, на всякий случай, хотел дать ссылку на пример, когда реинжиниринг оказался полезен.
История реверс-инжиниринга одного SMS трояна для Android
Ну, это я читал. Но назад собрать все равно не выйдет. И топикастеру (топикастерше ) надо это понять.
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
10.11.2013, 19:25  [ТС] #14
Цитата Сообщение от CoolMind Посмотреть сообщение
Bringoff, на всякий случай, хотел дать ссылку на пример, когда реинжиниринг оказался полезен.
История реверс-инжиниринга одного SMS трояна для Android
Это надо было в приват кинуть тому кто говорит о бесполезности декомпиляции... Меня интересует Не изменение манифеста который можно блокнотом отредактировать а именно то что описано в топе поста.
Цитата Сообщение от Bringoff Посмотреть сообщение
Ну, это я читал. Но назад собрать все равно не выйдет. И топикастеру (топикастерше ) надо это понять.
Пожалуйста не судите людей по себе. Отредактировав манифест все отлично собирается... а вот копнуть поглубже отредактировать и собрать обратно не получается.
0
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
10.11.2013, 19:59 #15
Цитата Сообщение от Olmira Посмотреть сообщение
Пожалуйста не судите людей по себе. Отредактировав манифест все отлично собирается... а вот копнуть поглубже отредактировать и собрать обратно не получается.
Эхх... Что с вами делать?.. Если у вас таки получились нормальные файлы с кодом, то попробуйте создать из них проект. Не знаю точно, как в еклипсе, но в intellij idea есть возможность создать (import) проект из имеющихся исходников.
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
10.11.2013, 21:21  [ТС] #16
Цитата Сообщение от Bringoff Посмотреть сообщение
Эхх... Что с вами делать?.. Если у вас таки получились нормальные файлы с кодом, то попробуйте создать из них проект. Не знаю точно, как в еклипсе, но в intellij idea есть возможность создать (import) проект из имеющихся исходников.
Мда... конечный результат декомпиляции АРК это сборка кучи xml которые очень легко редактируются, + куча smali которые на асемблере, которые просто так не прочтеш, ну если Вы не пишете диктанты в коде асемблере, тогда да... отредактировать легко... назад к вопросу... при декомпиляции с APKtool получаем папку смали, она же classes.dex если АРК открыть как архив. classes.dex легко декомпилируются в .java который легко понять и изменить.
ВОПРОС в том как из .java опять все это загнять в classes.dex или .smali.
Насколько я понимаю с прочтенной литературы за последние дни .java они же .classes при создании и компиляции проекта в эклипсе...
Тогда ВОПРОС в другом... Куда закинуть эти .java в проекте еклипс....
Это или мое знание русского ниже плинтуса, или вы читаете через строчку по диагонале.
0
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
10.11.2013, 21:59 #17
Olmira, из файлов Java надо создать новый проект в еклипсе или что вы там "используете" (импортировать или простой копипастой - для этого надо в достаточной мере знать программирование и среду разработки) Там проделать необходимые операции и скомпилировать/собрать apk. Именно готовый apk, а не всякие смали
0
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
10.11.2013, 23:28  [ТС] #18
куда кидать эти джава в проект еклипса? инфы по редактированию ноль. По тому что куда кидать в проекте тож 0.
0
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
11.11.2013, 08:07 #19
Если вопрос только в том куда закинуть файлы классов, то тут как раз все просто. В Эклипсе папка src далее идентификатор вида com.site.name откроете и туда скопируйте. если через файл браузер будете копировать то com, site и name будут папками, в последнюю name и надо положить джава файлики.

Я ответил на Ваш вопрос??
1
Olmira
0 / 1 / 0
Регистрация: 05.11.2013
Сообщений: 14
11.11.2013, 12:31  [ТС] #20
Цитата Сообщение от NOSC Посмотреть сообщение
Я ответил на Ваш вопрос??
Да... алилуя... хоть кто то дал понятный ответ...
1
11.11.2013, 12:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2013, 12:31

Arg к apk или ярлыки
Приветствую. Недавно увидел на приложении, делающую из телефона почти...

Ошибки с Android Dex
Может кто подскажет в чём проблема,второй день мучаюсь. Пытаюсь работать с СДК...

Не компилится проект - Unable to execute dex
Решил добавить библиотеку android4 в свой проект Build Patch - Cofigure. После...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru