Политика конфиденциальностиКонтактыО сайтеОтзывыGitHubDonate
© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
4 января 2019 г. 10:24

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

Android, Qt

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

28

Добрый день.

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

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

1

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

0

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

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

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

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

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

0

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

0

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

Options -> Kits

0

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

0

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

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

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

0

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

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

0

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

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

0

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

0

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

0

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

0

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

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

0

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

0

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

0

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

0

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

0

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

0

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

*.apk

0

Такого файлв нет. Нашел только 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

0

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

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

0

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

0

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

0

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

0

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

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

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

0

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

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

0

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

1

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

0

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
A
22 января 2019 г. 21:22
Allyonz

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

  • Результат:40баллов,
  • Очки рейтинга-8
A
22 января 2019 г. 14:15
Alex

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

  • Результат:89баллов,
  • Очки рейтинга6
IO
20 января 2019 г. 18:39
Ivan Otreshko

C++ - Тест 003. Условия и циклы

  • Результат:0баллов,
  • Очки рейтинга-10
Последние комментарии
22 января 2019 г. 13:17
Евгений Легоцкой

Создайте тогда тему здесь на форуме в разделе Qt с выкладками кода и вашими попытками внедрения делегата, позже гляну или может кто-то ещё глянет из опытных пользователей.
I
22 января 2019 г. 13:13
IscanderChe

Не проще тогда использовать сразу кастомный делегат с чекбоксом? Я попробовал, но там засада в том, что чекбокс показывается только при щелчке на ячейку, а дефолтно показывается значение. Как ...
22 января 2019 г. 12:15
Евгений Легоцкой

Если будет не приемлемо потом, то тогда через кастомный Item Delegate нужно будет перерисовать ячейки в той колонке.
I
22 января 2019 г. 12:09
IscanderChe

Получилось приемлемо. Спасибо!Нюанс только в том, что поле рядом с чекбоксом не пропадает, оно просто пустое, что видно при выделении ячейки. Но этого достаточно.
22 января 2019 г. 11:50
Евгений Легоцкой

Переопределить метод data для той колонки и роли Qt::DisplayRole, чтобы в том случае возвращался QVariant() я так думаю... Но возможно, что у вас там будут нюансы, если вы туда чекбокс за...
Сейчас обсуждают на форуме
23 января 2019 г. 7:54
Михаиллл

Зарание спасибо.А еще на эту тему можно будет сделать статью. Это контент будет уникальным.
23 января 2019 г. 7:37
Евгений Легоцкой

Hello. Maybe the English will be better for you? I think russian is not native language for you, or did I mistake? Did I undesrtood rightly, that you mean this documentation ( ...
I
22 января 2019 г. 13:45
IscanderChe

Всем добрый день. Суть задачи: надо, чтобы в одной из колонок QTableView вместо хранимого в QSqlTableModel значения выводился чекбокс и при смене состояния чекбокса значения в базе тоже ...
M
22 января 2019 г. 13:15
Max-P85

Евгений, огромное спасибо, все работает!
Присоединяйтесь к нам в социальных сетях

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