4 января 2019 г. 5:24

Как запустить проект на Android

Android, Qt

Здравствуйте. Как десктопный проект, скомпилированный с помощью MinGW запустить на Android?

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.
28

Добрый день.

Нужно собрать apk и закинуть его на Android устройство.

Вообще, вам вот эту статью по Android Manifest нужно почитать.

Здорово, но вы пользуетесь компилятором Android, а у меня он даже проект собрать не может. Скажите пожалуйста, как это сделать с помощью MinGW?

Там для сборки тоже используется MinGW. Вам нужно настроить комплект для сборки Android с архитектурой armeabi-v7a , а в качестве компилятора установить именно MionGW.

Я ещё раз акцентирую внимание на том, что

Под Windows для сборки apk я использовал только MinGW

и ничего другого

То, что там пишет GCC, так я ещё раз повторюсь, что MinGW - это GCC портированный под Windows, поэтому там написано GCC.

Попробовал настроить APK, но при создании шаблона появилась ошибка: Нет файла .pro приложения.

Мне эта ошибка ни о чём не говорит. У вас комплекты настроены для архитектуры armeabi-v7a?

Options -> Kits

Options -> Kits не компилируется. Я пробовал создать шаблон для armeabi-v7a. Но и Android для х86 тоже выдает такую ошибку.

А у вас эти версии Qt установлены?

Также, какая ситуация с самим проектом? Если кликнуть в левой панели на иконку "Projects", то там будет список возможных комплектов.

Ну и следовало бы перезапустить qmake, чтобы обновить всю проектную информацию при подключении сборки с другим комплектом.

Похоже что мой Qt не до конца обновился.

На рисунки то, что у меня есть. Как перезагруить qmake? Если скачать новую версию QT и установить, то указанные компиляторы появятся?

Сборка -> Перезапустить qmake

Посмотрите ещё, какие модули доступны в Maintenance Tool

У меня есть только Сборка -> Запустить qmake Несколько раз запускал qmake, но шаблон так и не создавался. Скажите пожалуйста, что значит Maintenance Tool? У меня Qt на русском и я могу не верно понять и не то глянуть.

maitenance tool - это утилитка для установки компонентов Qt, находится в каталоге Qt, куда вы его устанавливали.

Вот скрин из maitenance too

А раскройте пункт Qt 5.11.0. Я не помню, какие там компоненты под Windows.

Вполне возможно, что у вас всё есть, просто автоматически не добавились комплекты сборки. Тогда нужно вручную их создать во вкладке Комлекты, либо поменять компилятор Clang на MinGW в существующих. По идее должно сработать. Но, конечно, нужно будет указать правильную версию Qt.

Скажите пожалуйста, как поменять Clang на MinGW? Вот содержимое:

Откройте комплект сборки с clang для Андроид и поменяйте там компилятор на MinGW. А также поменяйте Qt на MinGW, если там что-то иное.

Добавил компиляторы андроид из qt 5,12,0 и они перестали выдавать такеие ошибки. Смог собрать необходимые файла. Видимо 5,11 была багованной версией. Скажите пожалуйста, после нужно скинуть папку со скомпилированным проектом и библиотеками на устройство андройд и программа заработает?

ищите apk файл в каталоге сборки, только он нужен, больше ничего не нужно.

Я не нашел в папке скоппилированного MinGW проекто apk файл. Скажите пожалуйста, он сам создается при компиляции? И если да, то где?

в build каталоге того комплекта, с которым собирали. Когда сделаете сборку проекта, то будет где-то в каталоге сборки. Где именно не помню, поищите через поиск

*.apk

Такого файлв нет. Нашел только CheckInstallApk-debug.apk в папке : D:\QT\5.12.0\Src\qtwebengine\src\3rdparty\chromium\build\android но это оказалось не мое приложение CheckInstallApk-debug.apk CheckInstallApk-debug.apk На всякий случай прикрепил этот файл. Также прикрепил проект. немогли бы вы его также скомпилировать и проверить, создается ли у вас файл .арк

AndroidTest.rar AndroidTest.rar

Не могу проверять у себя, поскольку мне придётся всё настраивать, а сейчас времени не имею на это.

Вы когда собираете проект, то у вас рядом с каталогом проекта появляется каталог build-***. Вот в этом каталоге и нужно искать этот apk.

в этом каталоге нет .apk есть только .exe .o .cpp .h .qmake.stash Makefile Makefile.Debug Makefile.Release

exe? - Вы не настроили комплект сборки для архитектуры arm

Настроил, дабавил шаблон APK в проект. На фото добавленные файлы.

Говорю про комплект сборки, а наличие данных файлов вообще ни о чём не говорит в данном случае. У вас могут быть данные файлы в проекте, потому, что проект может быть собран под Андроид. Но это не значит, что был правильно настроен сам комлект сборки.

Ну ок, у вас что-то собирается, тот exe с названием вашего проекта? AndroidTest.exe? Если так, то вы собрали проект под Десктоп, а не под Андроид. Нужно переключить комплект сборки на Андроид. Если есть настроенный комплект.

Комплекты сборки - это там, где вы компиляторы меняли в настройеках в Qt Creator.

Ну и до кучи, комплект сборки для Android должен быть виден здесь

Выбор комлпекта сборки в Qt Creator

Скомпилировал Clang-ом, собрался арк, он заработал. Спасибо.

Значит, всё-таки Clang заработал. Какие-то косяки с настройкой у вас были для предыдущих версих Qt, получается. Ну хорошо, что заработало.

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Ищу работу?
14,000.00 руб. - 40,000.00 руб.
Разработчик Qt
Annino, Moscow Oblast, Russia
5,000.00 руб. - 15,000.00 руб.
Дизайнер
Moskovskiy, Moscow, Russia
25,000.00 руб. - 30,000.00 руб.
Разработчик Qt/C++
Barnaul, Altai Krai, Russia

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы

А
22 августа 2019 г. 23:24
Александр73

Qt - Тест 001. Сигналы и слоты

  • Результат:47баллов,
  • Очки рейтинга-6
21 августа 2019 г. 10:23
Андрей Ермошин

C++ - Тест 002. Константы

  • Результат:58баллов,
  • Очки рейтинга-2
21 августа 2019 г. 10:15
Андрей Ермошин

C++ - Тест 001. Первая программа и типы данных

  • Результат:86баллов,
  • Очки рейтинга6
Последние комментарии
19 августа 2019 г. 7:41
Андрей Янкович

это проблема дистрибутива, попробуйте установить через пакетный менеджер snap Суть проблемы: libQt5Core которая лежит в дистрибутиве требует версию glibc >= 2.25 у вас видимо …
b
18 августа 2019 г. 6:09
bbb116

cqtdeployer /home/aleks/CQtDeployer/bin/cqtdeployer: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /home/aleks/CQtDeployer/lib/libQt5Core.so.5) linux mint …
D
17 августа 2019 г. 9:04
Damir

github ChekableTView Правой групповая смена значения при перетаскивании левой как обычно.
Сейчас обсуждают на форуме
24 августа 2019 г. 7:21
Евгений Легоцкой

Не помню, давно уже с QML не работал, по-моему, обычно пишет в консоль, что не находит файл. В любом случае какую-то ошибку в консоль выкидывает. Но если честно, если у вас проект будет ак…
БГ
24 августа 2019 г. 4:27
Брюс Глифф

Спасибо, вначале в документации было не понятно что к чему, теперь разобрался
I
21 августа 2019 г. 8:36
Intruder

Александр, мне не нужно перебирать. Вы говорите правильно, сначала я написал избыточный код просто не подумав. Задача такая, мне нужно просто переложить из QMap в атрибуты xml тега все, что там …
21 августа 2019 г. 4:46
IscanderChe

Спасибо! Получилось.
21 августа 2019 г. 3:16
nayk1982

Если Вы разрабатываете какую-то универсальную утилиту, которая вообще не привязана к логике, тогда как вариант: 1. Получить список таблиц через QSqlDatabase::tables 2. Для каждой табли…
EVILEG
О нас
Услуги
© EVILEG 2015-2019
Рекомендует хостинг TIMEWEB