Как перенести приложение с телефона на Android Studio? - PullRequest
1 голос
/ 27 октября 2019

Мой друг использовал мой телефон для тестирования приложения, которое он создавал в Android Studio. Короче говоря, приложение все еще на моем телефоне, и я пытался выяснить, как я могу взять приложение со своего телефона и экспортировать его в Android Studio, чтобы я сам мог поиграть с ним. Я уже спросил своего друга, как это сделать, и он сказал, что ничего не может найти на нем, поэтому я подумал, что было бы разумнее вместо этого довести ситуацию до вас, прекрасные люди.

1 Ответ

0 голосов
/ 27 октября 2019

Извлечение APK (скомпилированного файла приложения) из телефона может быть возможно при некоторых условиях, но его импорт в Android Studio невозможен.

Приложение существует на телефоне в скомпилированном состоянии, а не какпроект Studio.

Существуют инструменты для декомпиляции приложений Android, но если вам придется декомпилировать его до уровня Java, он может не скомпилироваться обратно.

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

Существует два способа извлечь APK из телефона:

  1. Если ваш телефон рутирован, вы можете использовать приложение, такое как RootExplorere, или вы можете использовать ADB, работающий в режиме root, чтобы вытащить APK на ПК.

Использование:

adb shell pm path app.package.name

чтобы узнать, где хранится APK, затем используйте:

adb pull <path to apk>

для извлечения его на ПК.

Если ваш телефон не рутирован, но ваш друг не отключил резервное копирование своего приложения, вы можете создать резервную копию и извлечь из него APK.

Используйте эту команду ADB:

adb backup -apk -f backup.ab app.package.name

Затем используйте этот инструмент для распаковки файла резервной копии.

Получив APK, вы можете использовать ApkTool для декомпиляции, анализа и настройкиэто.

Есть много других продвинутых декомпиляторов для Android, но ваш пробег может быть очень.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...