Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 06:35
Оценка:
Доброго времени суток, уважаемые коллеги!

На моем компьютере на Qt 5.15.2 (OS Ubuntu 18.04) я доставил всё для разработки под Android смартфон:


Однако, при попытке отлаживать приложение (смартфон в режиме "разработчик", подключен через USB шнур),
я выжу сообщение о несовместимости:


Также установлена Android Studio v 4.2.2

Куда копать?
При этом — всё в окнах QtCreator выглядит вполне корректно...

Заранее благодарю за любые подсказки.
Отредактировано 16.07.2021 6:47 AlexGin . Предыдущая версия .
Re: Qt на Андроиде - как добиться отладки?
От: Igore Россия  
Дата: 16.07.21 07:18
Оценка: 3 (1)
Здравствуйте, AlexGin, Вы писали:

AG>Доброго времени суток, уважаемые коллеги!

AG>Куда копать?
AG>Заранее благодарю за любые подсказки.
Привет, я через QtCreator на Android не разрабатывал, делал через Android Studio отладку C++ кода, нужное наверное и не подскажу, но для начала, adb стоит, устройство видишь(adb devices), зайти на него можешь, архитектуры совпадают? Через Android Studio устройство есть? https://doc-snapshots.qt.io/qtcreator-4.0/creator-developing-android.html читал?
Re: Qt на Андроиде - как добиться отладки?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 16.07.21 07:28
Оценка:
Здравствуйте, AlexGin, Вы писали:

Не использовать Qt на Андроиде?
Маньяк Робокряк колесит по городу
Re[2]: Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 07:47
Оценка:
Здравствуйте, Igore, Вы писали:

I>Здравствуйте, AlexGin, Вы писали:


AG>>Доброго времени суток, уважаемые коллеги!

AG>>Куда копать?
AG>>Заранее благодарю за любые подсказки.
I>Привет, я через QtCreator на Android не разрабатывал, делал через Android Studio отладку C++ кода, нужное наверное и не подскажу, но для начала, adb стоит,
Что значит ADB?

I>устройство видишь(adb devices), зайти на него можешь, архитектуры совпадают?

где-то в Android-Studio можно просмотреть connect с устройством?

I>Через Android Studio устройство есть?

Непончтно даже — где там искать состояние connect-а с устройством.

I>https://doc-snapshots.qt.io/qtcreator-4.0/creator-developing-android.html читал?


1) JDK у меня стоит
2) Android SDK также стоит
3) Android NDK опять таки есть

Правда — создание AVD невозможно.
ЧЯДНТ?
Re[3]: Qt на Андроиде - как добиться отладки?
От: Igore Россия  
Дата: 16.07.21 07:59
Оценка: 9 (1) +1
Здравствуйте, AlexGin, Вы писали:

I>>Здравствуйте, AlexGin, Вы писали:


I>>Привет, я через QtCreator на Android не разрабатывал, делал через Android Studio отладку C++ кода, нужное наверное и не подскажу, но для начала, adb стоит,

AG>Что значит ADB?
ADB — Android Debug Bridge

sudo apt-get install android-tools-adb
adb devices


I>>устройство видишь(adb devices), зайти на него можешь, архитектуры совпадают?

AG>где-то в Android-Studio можно просмотреть connect с устройством?
Это я про консоль.

I>>Через Android Studio устройство есть?

AG>Непончтно даже — где там искать состояние connect-а с устройством.
вот тут подключенное устройство есть?
Или через Tools\AVD manager — можно создать виртуальное устройство

I>>https://doc-snapshots.qt.io/qtcreator-4.0/creator-developing-android.html читал?


AG>1) JDK у меня стоит

AG>2) Android SDK также стоит
AG>3) Android NDK опять таки есть

AG>Правда — создание AVD невозможно.

AG>ЧЯДНТ?
Там не только про sdk\ndk
Re[3]: Qt на Андроиде - как добиться отладки?
От: Igore Россия  
Дата: 16.07.21 08:47
Оценка: 3 (1)
Здравствуйте, AlexGin, Вы писали:

AG>Непончтно даже — где там искать состояние connect-а с устройством.

+ http://files.rsdn.org/21902/QtCreator_android.png тут в верхней вкладке Devices покопаться
+ В QtCreator\Projects\Build&Run посмотреть
+ QtCreator внизу над Start Debuggin и Start, должен быть, проект цели и устройства, там должен быть правильный компилятор, ну и в идеале твоё устройство
Re[4]: Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 10:34
Оценка:
Здравствуйте, Igore, Вы писали:

I>>>Привет, я через QtCreator на Android не разрабатывал, делал через Android Studio отладку C++ кода, нужное наверное и не подскажу, но для начала, adb стоит,

AG>>Что значит ADB?
I>ADB — Android Debug Bridge
I>

I>sudo apt-get install android-tools-adb
I>adb devices


Установил эту утилиту ADB — мне выводится пустой лист (хотя есть подключенный по USB HUAWEI 20 mate).

I>устройство видишь(adb devices), зайти на него можешь, архитектуры совпадают?

I>Это я про консоль.
Нет, выполнение (под root):
 # adb devices


Даёт такой вот ответ:

List of devices attached
adb server version (41) doesn't match this client (39); killing...
* daemon started successfully


Куда и что было приаттачено — непонятно?

I>>>Через Android Studio устройство есть?

AG>>Непончтно даже — где там искать состояние connect-а с устройством.
I>Image: studio.png вот тут подключенное устройство есть?
I>Или через Tools\AVD manager — можно создать виртуальное устройство

В среде Android Studio — удалось скачать несколько виртуальных устройств.

Теперь удаётся создание виртуального (но не работающего) устройства.
Реальное устройство — подключенной по USB — не видно

I>>>https://doc-snapshots.qt.io/qtcreator-4.0/creator-developing-android.html читал?

Я так понял, что для отладки — важен именно JDK?

P.S. Удалось разобраться — оказывается на смартфоне, кроме режима "разработка", надо включить ещё и "отладка по USB".
Отредактировано 16.07.2021 11:04 AlexGin . Предыдущая версия . Еще …
Отредактировано 16.07.2021 10:44 AlexGin . Предыдущая версия .
Отредактировано 16.07.2021 10:40 AlexGin . Предыдущая версия .
Отредактировано 16.07.2021 10:38 AlexGin . Предыдущая версия .
Re[4]: Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 11:03
Оценка: 1 (1)
Здравствуйте, Igore, Вы писали:

I>Здравствуйте, AlexGin, Вы писали:


AG>>Непончтно даже — где там искать состояние connect-а с устройством.

I>+ http://files.rsdn.org/21902/QtCreator_android.png тут в верхней вкладке Devices покопаться
I>+ В QtCreator\Projects\Build&Run посмотреть
I>+ QtCreator внизу над Start Debuggin и Start, должен быть, проект цели и устройства, там должен быть правильный компилятор, ну и в идеале твоё устройство

Удалось разобраться — оказывается на смартфоне, кроме режима "разработка", надо включить ещё и "отладка по USB"
Re[5]: Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 11:14
Оценка: +1
Здравствуйте, AlexGin, Вы писали:

AG>...выполнение (под root):

AG>
AG> # adb devices
AG>


AG>Даёт такой вот ответ:

AG>

AG>List of devices attached
AG>adb server version (41) doesn't match this client (39); killing...
AG>* daemon started successfully


Когда коректно подключен HUAWEI 20 mate (lite) и на нём разрешена отладка по USB (даже в режиме обычного пользователя):

alexgin@alexgin-work-pc:~$ adb devices
List of devices attached
adb server version (41) doesn't match this client (39); killing...
* daemon started successfully
HYF0219307002575 device

Re[5]: Qt на Андроиде - как добиться отладки?
От: Igore Россия  
Дата: 16.07.21 13:13
Оценка:
Здравствуйте, AlexGin, Вы писали:

AG>>>Непончтно даже — где там искать состояние connect-а с устройством.

I>>+ http://files.rsdn.org/21902/QtCreator_android.png тут в верхней вкладке Devices покопаться
I>>+ В QtCreator\Projects\Build&Run посмотреть
I>>+ QtCreator внизу над Start Debuggin и Start, должен быть, проект цели и устройства, там должен быть правильный компилятор, ну и в идеале твоё устройство

AG>Удалось разобраться — оказывается на смартфоне, кроме режима "разработка", надо включить ещё и "отладка по USB"

Ты пиши как продвижения, самому интересно, заработало из коробки?
Re[6]: Qt на Андроиде - как добиться отладки?
От: AlexGin Беларусь  
Дата: 16.07.21 14:34
Оценка: 9 (1)
Здравствуйте, Igore, Вы писали:

I>Ты пиши как продвижения, самому интересно, заработало из коробки?


Опишу порядок действий для Ubuntu 18.04.5:
1) Скачал online-installer Qt: qt-unified-linux-x86_64-4.1.1-online.run и сделал его запускаемым:
$ chmod u+x qt-unified-linux-x86_64-4.1.1-online.run
2) Запустил установку Qt (от имени root пользователя):
$ sudo ./qt-unified-linux-x86_64-4.1.1-online.run
установка происходит в каталог: /opt/Qt/... ​
3) При установке выбрал Qt 5.15.2 со следующими опциями:
​- Desktop gcc 64 bit (для разработки настольных приложений под Linux)
​- Android (для разработки мобильных приложений)
4) После этого — установил Android-ное хазяйство, как рекомендуют здесь:
https://linuxize.com/post/how-to-install-android-studio-on-ubuntu-18-04
$ sudo apt install openjdk-8-jdk
просмотрел версию JAVA
$ java -version
установил Android Studio:
$ sudo snap install android-studio --classic
выбрал установки для Android Studio — как рекомендуется в вышеукказанной ссылке
5) В приложении Android Studio в диалоге Settings (Appearance $ Behavior/System Settings/Android SDK)
— на закладке "SDK Platforms" выбрал все птички чек-боксов от Android 4.0 и выше
— на закладке "SDK Tools" выбрал все птички чек-боксов имеющихся в окне (пару из них уже стояли, предполагаю что в 3-м пункте опция Android их установила)
дал команду Android Studio скачать и установить выбранные пакеты
6) Запустил QtCreator (как root):
   alexgin@alexgin-work-pc:/opt/Qt/Tools/QtCreator/bin$ sudo ./qtcreator

Через меню Tools/Options/Devices — Android вышел на страницу поддержки мобильных проектов.
При этом QtCreator пишет, что некоторых компонентов не хватает и предлагает сразу же их докачать — соглашаемся.
Здесь есть одна тонкость — бегунок прогресс-бара будет стоять где-то в начале (например на 17%) — надо жать кнопку "yes" чтобы скачать всё требуемое.
Понадобиться несколько нажатий кнопки "yes" пока дойдёт до 100% (не знаю почему это так нестандартно сделали).
После скачивания — в подразделах "JDK Settings" и "Android Settings" — должно быть всё установлено.
Теперь в Tools/Options/Kits можно выбрать вариант "Android..." в качестве default.
7) Подключаем смартфон по USB шнуру и разрешаем — как работу в режиме "разработка" (7 раз нажать на "build number" в разделе "About Phone")
и разрешив "USB debugging" и "Always prompt when connrcting to USB" в разаделе "System & updates"/"Developer options".
8) Установил рекомендованный тобой Android Debug Bridge:
$ sudo apt-get install android-tools-adb
9) Подключил смартфон — и обнаружил, что выполнение команды
$ adb devices
сумело обнаружить мой девайс (может потребуется выполнить команду adb devices пару раз, пока не найдёт подключение)
Отредактировано 16.07.2021 21:20 AlexGin . Предыдущая версия . Еще …
Отредактировано 16.07.2021 14:45 AlexGin . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.