Почему моя папка. android не генерирует автоматически adbkey и другие файлы? (АБР) - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь использовать adb на Raspberry Pi, но моя папка .android пуста (ls показывает, что внутри папки ничего нет).

Я пытался найти решение в течение нескольких дней и обнаружил, что моя папка .android полностью пуста, хотя она должна содержать следующие файлы:

adbkey adbkey.pub androidwin.cfg avd cache repositories.cfg sites-settings.cf

В результате того, что моя папка .android пуста, я получаю следующую ошибку, когда пытаюсь использовать adb start-server (или любую другую команду adb):

* daemon not running; starting now at tcp:5037 ADB server didn't ACK Full server startup long: /tmp/adb.1000.log Server had pid: 2036 --- adb starting (pid 2036) --- adb I 05-18 12:15:21 2036 2036 main.cpp:57] Android Debug Bridge version 1.0.39 adb I 05-18 12:15:21 2036 2036 main.cpp:57] Version 1:8.1.0+r23-5~18.04 adb I 05-18 12:15:21 2036 2036 main.cpp:57] Installed as /usr/lib/android-sdk/platform-tools/adb adb I 05-18 12:15:21 2036 2036 main.cpp:57] adb I 05-18 12:15:21 2036 2036 main.cpp:57] adb_auth_init adb I 05-18 12:15:21 2036 2036 main.cpp:57] User key '/home/username/.android/adbkey' does not exist... adb I 05-18 12:15:21 2036 2036 main.cpp:57] generate_key (/home/username/.android/adbkey)... * failed to start daemon error: cannot connect to daemon

Демон отказывается запускаться, поскольку файл adbkey (и другие, перечисленные выше) в папке .android не генерируются автоматически, как они должны.

Как я могу исправить эту проблему? Я испробовал каждое решение, которое смог найти на форумах Stack, но, похоже, ничего не работает. Я подозреваю, что это как-то связано с разрешениями моей папки .android, но я не уверен, что именно мне нужно изменить. Я пытался перезагрузить мой Raspberry Pi несколько раз. Я чрезвычайно застрял и был бы очень признателен за любую помощь, которую я мог получить.

1 Ответ

0 голосов
/ 23 апреля 2020

Предисловие: У меня нет непосредственного опыта работы с Raspbian, но я некоторое время работал с Debian над ARM.

Похоже, это историческая проблема с тем, как adb был построен для Debian Buster на устройствах ARM. Если вы запустите adb keygen keyfile.pub, вы, скорее всего, увидите сообщение об этом: Bus error. Похоже, что устаревшая библиотека использовалась для сборки версии, используемой для архитектуры armhf. Этот пост на ODROID объясняет ситуацию немного дальше.

Итак, как нам решить эту проблему? Из того, что я могу сказать, нет более новой версии adb в тестируемых или нестабильных репозиториях. У вас есть 3 решения: использовать пакет вне вашего дистрибутива, скомпилировать пакет из исходного кода из пакета или использовать более старую версию adb. Здесь я порекомендую go с последним.

Решение, адаптированное к проблеме на другом ARM-порте debian

Чтобы исправить это, добавьте растяжение как источник в /etc/apt/sources.list (через документацию Raspbian )

# deb http://archive.raspbian.org/raspbian stretch main

, затем понизьте adb:

# apt update
# apt install adb=1:7.0.0+r33-1 android-libadb=1:7.0.0+r33-1 android-libbase=1:7.0.0+r33-1 android-liblog=1:7.0.0+r33-1 android-libcutils=1:7.0.0+r33-1

Это должно решить проблему для вы.

...