Oct. 31, 2019, 2:05 p.m.

Можно ли в Qt декомпилировать apk-файл?

Добрый день?
Можно ли в Qt декомпилировать apk-файл?

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
9

Добрый день.

Вы имеете ввиду apk, который собран на Qt? Или любой? Вообще декмопиляция к Qt никакого отношения не имеет как само действие.
Вам нужно искать информацию на две темы:

  • декомпиляция apk, которые написаны с использованием NDK (то есть написаны на C++, Qt в том числе)
  • декомпиляция apk, которые написаны на Java (то есть с использование SDK)

Вообще не самая хорошая мысль )) Только время зря потратите, по-моему.

Я тоже так думаю. Но говорят можно полностью декомпилировать то, что написанно в андроид студио.

Ну то, что написано на Java - это можно. Там же код транслируется в исполняемый байт-код.

Но C++ компилируется в ассемблер. Если это даже и будет декомпилировано обратно в классы, то при проекте, который написан на Qt вы получите следующую ситуацию:

  • все названия классов, методов и т.д. будут иметь невнятные имена, которые не будут соответствовать тому, что было написано изначально в проекте.
  • при декомпиляции всё будет свалено в кучу, QML реализации, исходники проекта, moc файлы (в которых и так-то чёрт ногу сломит, а тут они ещё будут с невнятными именами) и т.д.

В общем бросьте это гиблое дело. Если вы хотите делать декомпиляцию, чтобы посмотреть, как это было где-то реализовано, то лучше просто спросить мнения опытных программистов, как бы они реализовали ту или иную фичу, как в той программе, которую вы хотели декомпилировать.

Нет, цель в не в том, что бы понять чужей проект, а в том, что бы посмотреть что будет при декомпиляции. Скажите пожалуйста, что такое moc файлы?

moc файлы - это файлы исходных кодов, которые генерируются автоматически при сборке Qt проектов. Это как раз все эти сигнал-слотовые соединения.
А также там генерируется вся мета информация, которая нужна для мета-объектной системы Qt.

Скомпилируйте любое обычное приложение на Qt под десктоп и посмотрите в build каталоге. Там будут файлы с префиксом moc_

А вообще, если хотите посмотреть, что там будет при декомпиляции, то к Qt это прямого отношения не имеет.
Вам нужно искать информацию о декомпиляции APK, написанных с использованием NDK, то есть на С++

Спасибо.

Оказалось можно разобрать арк, оказалось в содержимом такой бардак, что дествительно черт ногу сломает. Qml разбиты на qml и xml, появилось много файлов java, код с++ собран в машинный код, при его декомпиляции появляется совершенно не понятный набор цифр и букв. И еще какието бинарники джавы есть, тоже не понятно что это. Оказалось что декомпилировать проект не имеет смысла. Можно достать только картинки.

Ну собственно поэтому я и сказал, что бесполезное это занятие.

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Donate

Hello, Dear Users of EVILEG!!!

If the site helped you, then support the development of the site financially, please.

You can do it by following ways:

Thank you, Evgenii Legotckoi

T
Dec. 11, 2019, 4:56 p.m.
Toma

C++ - Тест 003. Условия и циклы

  • Result:50points,
  • Rating points-4
AT
Dec. 10, 2019, 8:06 a.m.
Anastasija Troschenkova

C++ - Test 001. The first program and data types

  • Result:60points,
  • Rating points-1
AT
Dec. 10, 2019, 8:02 a.m.
Anastasija Troschenkova

Qt - Test 001. Signals and slots

  • Result:73points,
  • Rating points1
Last comments
Dec. 9, 2019, 3:41 a.m.
Evgenij Legotskoj

Эта ошибка invalid use of incomplete type ‘class Ui::AnotherWindow’ обычно говорит о том, что не найдено определение класса или структуры. Типичная проблема - не подключён заголовочны…
NB
Dec. 9, 2019, 3:36 a.m.
Nikolaj Batmanov

Ну, не настолько со мной всё полхо...))) Вроде бы. Я ж кнопки отрисовываю.
Dec. 9, 2019, 3:14 a.m.
Evgenij Legotskoj

Добрый день. У вас ui файлов по ходу нет. UI файлы используются для вёрстки в графическом дизайнере.
NB
Dec. 9, 2019, 3:05 a.m.
Nikolaj Batmanov

Здравствуйте! Полностью скопировал ваш пример к себе, чтобы разобраться. А он не хочет запускаться, дает ошибку: invalid use of incomplete type ‘class Ui::AnotherWindow’ ui(new Ui…
Dec. 8, 2019, 7:23 a.m.
Evgenij Legotskoj

У меня здесь есть одна старая статья с примером векторного редактора. Там есть ответы на ваши вопросы. Поизучайте Qt/C++ - Урок 072. Пример векторного редактора на Qt QGraphicsItem, QG…
Now discuss on the forum
MU
Dec. 11, 2019, 8:27 a.m.
Maciej Urmański

Thank you! Now works, and this is solution. num_embed = Embed.objects.filter(added_by=recipe.added_by).count()
Dec. 11, 2019, 8:12 a.m.
Mihailll

Так работает. Взял этот пример https://api-2d3d-cad.com/face_recognition_with_opencv/ void MainWindow::on_pushButton_4_clicked() //фото определение лица{ // Load Face cascade (.xml…
TD
Dec. 10, 2019, 4:14 a.m.
Timur Dosov

Спасибо, работает. А ещё вопрос: как загрузить страницу с динамической подгрузкой контента по скроллингу? Например - [https://ntvplus.ru/tv/]. Пока делаю через костыль - QApplication::s…
Dec. 9, 2019, 7:16 a.m.
qml_puthon_user

Я сделал простой вывод текста по испусканию сигнала... Чего не хватает программе?) Python: # системные библиотекиimport cv2import numpy as npimport sysimport threading# PyQt б…
SK
Dec. 8, 2019, 4:11 p.m.
Semen Kosandjak

інтерфейс qt, приклад того додаю на малюнку, я натискаю на кнопку і у мене з'являється 2 текст лайну в які я вводжу значення, тобто в 1 цифри,у другому випадку це літери, тобто c++, без графічно…
EVILEG
About
Services
© EVILEG 2015-2019
Recommend hosting TIMEWEB