Перейти к содержанию
Fire Monkey от А до Я
  • 1

Проблема компиляции андроид приложения Delphi 10.3.3


fin4

Вопрос

Здравствуйте.

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

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

Переустановил дельфи включая галочки поддержки андроид,  зашёл в папку PlatformSDKs, запустил SDK Manager обновил по рекомендациям самого SDK всё что он выделил, встречались разные ошибки в логе типа:

Downloading Android Auto Desktop Head Unit emulator, revision 1.1
Download finished with wrong size. Expected 2691901 bytes, got 2615480 bytes.

Запустил AVD создал виртуальное устройство андроид версии 4.4.2 устройство запустилось, зашёл в настройки активировал режим разработчика, далее в настройках разработчика включил поддержу usb отладки. Запустил дельфи, в путях SDK Manager, Android SDK 25.2.5 32 bit, SDK/NDK/Java нигде нет иконки восклицательного знака то есть всё нашлось всё чётко, в системной переменной Path тоже добавлял пути как описывалось в мануалах на разных источниках.

Создаю новый проект, пустая форма, жму компилировать поначалу выходила ошибка не найден файл ..\android\EXEC после различных манипуляций, а именно оно исчезло когда я удалил папку Project в Document эта ошибка исчезла и приложение сохраняется по адресу C:\Users\Fin4\Documents\Embarcadero\Studio\Projects\Android\Debug\Project1\bin

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

https://prnt.sc/26w3x55

Это то на чём я остановился в данный момент.

Я скопировал созданный апк с простейшей командой вывода сообщения hello world в своё созданное виртуальное андроид устройство в эмуляторе MEmu 4.2.2 версии оно установилось и запустилось, отработало без ошибок! Создал второе виртуальное устройство андроид с версией 7.1 тоже в MEmu но на этой версии андроида приложение не захотело устанавливаться выдало ошибку и закрылось, почему так? Я читал что приложения которое запускается на более поздней версии андроид должно запускаться и на более свежей версии без проблем.

Запускаю AVD и там у меня создано 2 виртуальных устройства, версия 4.2.2 и версия 8.0 (в дельфи в выпадающем меню стояло устройство с версией 4.2.2 когда компилировал приложение) 4.2.2 версия запускается без проблем в AVD версия 8.0 запускается тоже без ошибок, НО само виртуальное устройство не загружается, появляется окно андроид устройства с боковыми кнопками включить, камера, повернуть вертикально и просто чёрное окно самого телефона и на этом всё.

 

Скачивал я Android Studio созданные в нём виртуальные устройства запускались без проблем, отыскал где находится sdk/ndk пытался указать пути в дельфи в SDK Manager но именно у NDK названия файлов некоторые отличаются от тех какие прописаны в дельфи по умолчанию, эксперимент провалился и я снёс андроид студио.

Ещё такая проблема по адресу PlatformSDKs\android-sdk-windows\extras\google\usb_driver лежат драйвера юсб в диспетчере устройств вылазит неопознанное юсб устройство, я жму установить  android_winusb.inf выходит ошибка "выбранный INF файл не поддерживает этого метода установки" хотя в самом SDK Manager Google USB Driver - Installed

Спасибо что дочитали до конца и очень надеюсь что кто нибудь поможет мне разобраться с моей проблемой.

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

Моя ОС win 7 64-bit

Java пробовал:

jdk-11.0.14 64-bit ошибка

jdk-17.0.2 64-bit ошибка

jdk1.8.0_60 64-bit создался apk файл но всё равно ошибка в дельфи

Мои знания в программировании только на дельфи + немного php+mysql с Java не работал.

 

Изменено пользователем fin4
Ссылка на комментарий

Рекомендуемые сообщения

  • 0
9 минут назад, alikoder сказал:

SDK manager можно скрин. Сам apk файл создается без устройства? Реальный мобильник есть или только виртуальное устройство?

Вот, оставил раскрытыми то что с меткой  install

https://prnt.sc/26w8s2k

apk создаётся и запустился на виртуальном устройстве 4.2.2 версия, а на 7.1 ошибка

Реального мобильного на андроиде нет

Ссылка на комментарий
  • 0

Забудьте об эмуляторах, ни для андроида, ни для ios, их поддержка в делфи сломалась уже давно.  Запуск возможен только на реальных устройствах.

Ссылка на комментарий
  • 0

Можете сказать если я скомпилирую апк с подключенным по usb реальным телефоном андроид версия 4.2.2 то есть старая, этот апк будет работать на телефонах последних версий?

1 час назад, Tumaso сказал:

Забудьте об эмуляторах, ни для андроида, ни для ios, их поддержка в делфи сломалась уже давно.  Запуск возможен только на реальных устройствах.

В интернете довольно много информации и достаточно не так давно опубликованной в том числе находил и на этом форуме, информация о том как успешно подключают делфи к виртуальному андроид девайсу.

Ссылка на комментарий
  • 0
1 час назад, fin4 сказал:

Можете сказать если я скомпилирую апк с подключенным по usb реальным телефоном андроид версия 4.2.2 то есть старая, этот апк будет работать на телефонах последних версий?

В интернете довольно много информации и достаточно не так давно опубликованной в том числе находил и на этом форуме, информация о том как успешно подключают делфи к виртуальному андроид девайсу.

Работать НЕ будет.

Ссылка на комментарий
  • 0
18 часов назад, fin4 сказал:

В смысле вообще апк приложение написанное на дельфи работать не будет??)

Формулируйте вопрос правильно.
Приложения, скомпилированные на делфи, работать будут. Но в зависимости от условий (версия  андроида, минимальная и целевая версия SDK указанные при компиляции приложения). Т.е. если скомпилировать для android 5+, то на андроид 4.2.2 не запустите

Ссылка на комментарий
  • 0
5 часов назад, Tumaso сказал:

Т.е. если скомпилировать для android 5+, то на андроид 4.2.2 не запустите

Да, такую информацию я читал. У меня скомпилировалось приложение под андроид 4.2.2 с виртуальным устройством хоть и вышла ошибка что устройство не найдено. На андроид 4.2.2 приложение запустилось когда я его сам скопировал в эмулятор, а на андроид 7.1 не захотело работать.

Сейчас хочу подыскать какой нибудь старенький андроид с той же 4.2.2 версией и попробовать проделать всё с реальным устройством

Ссылка на комментарий

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...