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

Delphi 11, Android: "Segmentation fault 11" или "Exception class 6" при закрытии приложения из-за .CanFocus=True


Andrew_A

Вопрос

Бага попила много крови, после нахождения причины хотелось плакать и смеяться одновременно.

Дано: Delphi 11.0 Version 28.0.42600.6491, таргет Android x64, дефолтный Android SDK 26.1.1, конечная версия ОС - Android 11. С другой конфигурацией пока не проверял. 

Симптом: Приложение вылетает с "Segmentation fault 11" или "Exception class 6" при его закрытии.

Как воспроизвести: бросаем на форму ЛЮБОЙ контрол (например, TButton) со свойством .CanFocus равным True. Запускаем приложение на таргете в режиме отладки. Делаем любое действие с контролом, например, нажимаем наш TButton. Можно даже без обработчика OnClick. Закрываем приложение системной стрелкой Андроида. Ловим Exception.

Как избежать: во ВСЕХ контролах в проекте, имеющих свойство .CanFocus ставим его в False. Проблема изчезает.

P.S. Заметил, что с TSwitch проблема остается даже с .CanFocus=False. С TEdit тоже беда - без .CanFocus=True на Андроиде он просто не работает. Описанное выше подтверждаю как минимум для TButton, TTabItem, TCheckBox, TComboBox, TEdit

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

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

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

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

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

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

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

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

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

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

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

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