Проект Unity и Vuforia потерян, как отредактировать apk? - PullRequest
0 голосов
/ 04 января 2019

У меня большая проблема с Unity. Неделю назад я сделал приложение для Android, дополненной реальности. Я скомпилировал приложение в формате APK. После недели создания этого приложения в единстве и вуфории за это время у меня сломался жесткий диск.

У меня вопрос, как я могу изменить уже созданный apk .. потому что я только создал проект. Все, что у меня есть, это apk, который остается на телефоне.

Есть ли возможность?

Я искал результаты ... но тщетно. Спасибо!

1 Ответ

0 голосов
/ 05 января 2019

Иногда возможно получить некоторые данные из apk, такие как написанные вами скрипты. Это зависит от того, как вы скомпилировали свой apk. Если бы вы использовали IL2CPP, я бы сказал, что он потерян, но если вы используете моно в качестве сценария, вы можете попытаться декомпилировать его. (Нет, если вы использовали запутывающий код и т. Д.)

Для этого вам понадобится apktool и программа наподобие dnspy. (Может быть, также Aapt) Чем вы должны использовать apktool для получения DLL. Вот пример apktool.bat, который будет использовать apktool.jar для получения DLL.

@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
chcp 65001 2>nul >nul
java -jar -Duser.language=en -Dfile.encoding=UTF8 "%~dp0\apktool.jar" %*

После запуска команды

apktool d appname.apk

Вы должны перейти к appname \ assets \ bin \ Data \ Managed.

В этой папке вы найдете Assembly-CSharp.dll и Assembly-CSharp-firstpass.dll.

Вы можете открыть dll, используя dnSpy, и получить большую часть своего кода.

Однако этот процесс может быть сложным, если вы делаете это впервые, так что не торопитесь. Если у вас есть дополнительные вопросы, я могу попытаться объяснить, как это сделать.

Другие вещи, которые вы можете сделать: (чтобы вернуть ваши сценарии / возможно даже активы)

Вы можете попробовать использовать некоторые из расширений редактора Unity, например Unity Unpacker. Большинство из них платные и, как правило, работают не очень хорошо.

В будущем я рекомендую использовать какой-нибудь контроль версий. Это облегчает жизнь, и вам не нужно беспокоиться о резервных копиях. Кроме того, если вам нужно вернуться к тому, что у вас было несколько дней назад, это всего лишь несколько кликов. Для этого вы можете использовать Unity Teams, Github для Unity или что-то в этом роде.

...