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

RadStudio 10.3.3 и эмулятор BlueStacks: проблемы.


bvn123

Вопрос

Добрый вечер,

я пытаюсь запустить приложение из RadStudio10.3.3 в BlueStacks 4.240. Оба скачаны/установлены вчера-сегодня с родных сайтов.

1) если выполнить в RadStudio10 Run, появляется окно сообщения Error с текстом:

"Unable to create process: Performing Streamed Install

abd: connect error for write: closed"

2) при этом файл Project1.apk создается,  в BlueStacks посредством "Импорта из Windows" загружается и устанавливается,

но при его открытии на короткое время появляется окно с иконкой ic_launcher.gif ("пламя" - она в ресурсах проекта) на черном фоне,

окно исчезает, закладка Project1 остается. При щелчке по закладке кратковременно появляется то же окно, а закладка исчезает.

Пробовал выполнять проект и под платформу Android 32 - тот же результат.

 

Для теста BlueStacks скачал некое приложение Millimeter.apk - в BlueStacks оно импортируется из Windows, устанавливается и запускается нормально.

 

На форме приложения : неактивная кнопка с надписью, таймер на 3с, исходно Enabled, по переполнению таймера кнопка становится активной, а при нажатии на ней меняется надпись.

Таймер добавил в надежде, что хотя бы 3 секунды приложение повисит - этого не происходит.

Что может быть не так со сгенерированным файлом Project1.apk?

 

Чего не хватает, чтобы приложение в Bluestacks запускалось и отлаживалось из RadStudio?

-----

Найденые рекомендации по настройке пытался выполнить.

ОС после установки RadStudio и Bluestacks перезапустил.

Отключал в RadS 10 IDE: Project\Deployment файлы с LocalName 'libnative-activity.so'. При запуске Run на этапе Compile они остаются отключенными, но при переходе к Deployment снова автоматически включаются (устанавливаются галочки). Если это неверно, как сделать, чтобы галочки оставались сброшенными?

В IDE: Run\Parameters\Parameters: введен параметр -cleaninstall

Эмулятор виден в ProjectGroup1\Project1\Target Platforms (Android 64)\Android 64-bit Android SDK 25.2.5 64 bit\Target: emulator-5554 (5554)

На всякий случай перед очередным выполнением Run в RadSt10, в BlueStacks удаляю вручную предыдущее загруженное приложение Project1.

Видел в рекомендациях что-то по поводу подключения adb.exe на 127.0.0.1:5555, проверил:

 TCP    127.0.0.1:5555         127.0.0.1:55942        ESTABLISHED
 [HD-Player.exe]

и гораздо ниже в списке:

  TCP    127.0.0.1:55942        127.0.0.1:5555         ESTABLISHED
 [Adb.exe]

 

 

 

 

 

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

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

  • 0

krapotkin, спасибо за ответ,

уточните, пожалуйста, это касается только бесплатного RadStudio 3.х?

в сети вижу совместную работу Эмулятор BlueStacks для Rad Studio XE3- XE8 Seattle 10, например, здесь:

https://www.youtube.com/watch?v=AR-GoHwwykY

если BlueStacks не подходит именно для отладки из RadStudio 3, не посоветуете ли другой эмулятор андроид, достоверно работающий с RadS 3.3?

P.S.

на этом форуме также есть пост о совместной работе с RadStudio XE5 (к сожалению, тоже не RadStudio 3)

http://fire-monkey.ru/topic/121-работа-с-эмулятором-bluestacks-из-rad-studio-xe5/

Изменено пользователем bvn123
уточнение
Ссылка на комментарий
  • 0

Я почти уверен, что наверное есть способ что-то запустить под этим эмулятором, но все в основном сводится к уже пройденному. На видео по сути просто отключается проверка и сообщение Application dosn't work on this device. На самом деле разработчики Delphi конечно же случайно вставили эту проверку и этот текст в программу, все наверняка работает, что бы там ни говорили на офсайте. Они просто скрывают от нас эту удивительную возможность.

Запуск на BS является хаком, не нормальным способом работы. Это всегда говорит о том, что при малейшем изменении в студии или использовании чего-то чуть более сложного чем A+B вы опять можете получить совершенно неработоспособное приложение.

Это тупик.

При современных ценах на андроид-телефоны нет никакого смысла пользоваться любым эмулятором. Ни по скорости, ни по удобству разработки.

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

я не знаю, под какой смартфон или планшет предпочтительно предлагать приложения, аналогичные тому, которые написаны под win в Delphi7,

хочу сначала хотя бы посмотреть, что получится с выводом графиков сигналов в андроид-эмуляторе, затем определиться со смартфоном или планшетом и уже на нем заниматься передачей данных от датчиков либо по USB, либо по Bluetooth.

для меня эмулятор  и RadStudio пока актуальны,

что касается среды разработки, в RadS есть знакомый мне компонент для построения графиков, а, как я понял, в Android Studio с графиками придется повозиться.

ответы на вопросы из первого поста нужны,

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

я понимаю, доверия ко мне нет, когда пара статей 2015 года говорит, что все зашибись
тогда почитаем Marco Cantu - продакт-менеджера Delphi

Posted November 6, 2019
https://en.delphipraxis.net/topic/1920-64bit-testing-hardwareemulation/?do=findComment&comment=15048
As for emulators, the issue is they are mostly Intel-based, so Java apps run fine, but native ones require a ARM emulator like libHoudini (this was an Intel library, but I think they stopped all development since they exit the Android world)

Что касается эмуляторов, проблема в том, что они в основном основаны на Intel, поэтому приложения Java работают нормально, но для нативных требуется эмулятор ARM, такой как libHoudini (это была библиотека Intel, но я думаю, что они остановили всю разработку, так как они вышли из мира Android)

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

доверие вообще ограниченное к материалам из инета, практически к любым, кроме проверенных лично,

а вам спасибо.

Нашел статью на сайте разработчика Rad Studio:

https://www.embarcadero.com/starthere/xe7/mobdevsetup/android/en/running_your_android_application_on_an_android_emulator.html

Описываемого в статье Android Virtual Device Manager в меню Start | Embarcadero RAD Studio 10.3 нет, там вообще нет отдельного пункта с Android SDK,

само приложение AVD Manager.exe нашел, папка другая, но, в отличие от того, что в статье, вместо значений параметров знаки вопроса, при просмотре Details пишет, что в ini-файле неизвестный target: Android-24 - в ini такая строка есть, но что для чего - не понял.

Впечатление, что в бесплатной RadStudio 10.3 блокировки для сужения возможностей разработки, и для работы с эмуляторами надо устанавливать какую-нибудь RadSt XE.

На том же сайте статья о тесте написанных Android-приложений под win-32 в IDE RadStudio.

http://docwiki.embarcadero.com/RADStudio/XE6/en/Mobile_Preview

Смысл: сначала при активной целевой платформе (target) android-32 набрасываешь доступные компоненты (например, TOpenDialog, TSaveDialog для Android-32 оказываются заблокированы; TChart усеченный, но работает), выполняешь Build для проверки на ошибки, затем меняешь платформу - делаешь активной Win32 и запускаешь на выполнение. Вид совсем не как на экране смартфона, но функционирование проверяется.

Меня пока устраивает. С графиком просто, а с файлами (найти, открыть, сохранить) кардинальные отличия от того, что было под win32 - есть с чем разбираться.

 

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

Сама Делфи к любым андроид-эмуляторам, -компиляторам, -утилитам, и вообще всему, что нужно для Андроид-разработки, никакого отношения не имеет. Все это - Google SDK. Этот SDK меняется каждый год. Туда добавляются и пропадают самые разные вещи. В том числе и AVD manager и SDK manager. Полный SDK теперь вообще можно поставить только вместе с Android Studio, и потом в Делфи указать пути к нему. Так что никаких изъятий инструментов мобильной разработки Rad Studio не производит.

Далее.

В мобильной разработке совершенно не будут работать те подходы, которые применяются на десктопах.

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

На бесплатный TChart тоже я бы не стал возлагать большие надежды. Если честно, вам гораздо проще будет либо самостоятельно нарисовать график на Canvas. либо изготовить некий веб-сервер и с помощью к-нить JS-библиотеки подготовить данные, после чего открыть пользователю страницу с графиком.

При этом, до определенного предела вполне работает подход, когда программа пишется на FMX на Win32/64, (с характерными для телефона размерами окна, конечно) отлаживается, а потом время от времени запускается на Android. Я лично так делал. Но там нужно держать в голове серьезные отличия по работе с памятью вследствие ARC - Automatic Reference Counting. И соответственно, писать универсальный код.

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

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

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

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

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

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

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

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

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...