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

Зависания при запуске, Android


Alex7wrt

Вопрос

Практически все приложения, написанные под Android, периодически отказываются запускаться. На вскидку приблизительно в 10% случаях. То есть в 90% запускаются нормально, а в 10% - просто не запускаются и все. Если остановить и перезапустить, то скорее всего запустится. Причем это наблюдается в разных приложениях, под различными версиями Android от 4.0 до 6.0. Как раньше было в XE7, так и сейчас в Berlin.

Может быть, существуют какие-то общие рекомендации при создании приложений под Android? Я, например, обычно загружаю все ресурсы и произвожу инициализацию всех глобальных параметров в событии OnCreate формы, в главном потоке. Может так нельзя? Вобщем, теряюсь в догадках, что может быть не так.

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

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

  • 0

Вы не замечали - эти 10% случаев не попадают ли на "вторые" запуски приложения?
В смысле - если вы запускаете приложение впервые - оно однозначно запускается, а если в последующие разы - не всегда? (это пример из личного опыта)

Если именно так и происходит - то рекомендую "убивать" приложение при выходе. Т.е. сделать все как положено, кроме последнего Close. А вместо него - killprocess. Мне это помогло. По крайней мере в своем приложении не наблюдаю такого эффекта (ни на одном девайсе)

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

Раньше тоже думал, что из-за повторных запусков и занимался "убиванием" на выходе, пока несколько раз не столкнулся с зависанием приложения сразу после установки из FMX. Поэтому вообще не понятно.
А у Вас всегда нормально стартуют с первого раза? И, если не секрет, как Вы организовывали kilprocess? 

Ссылка на комментарий
  • 0
27 минут назад, Alex7wrt сказал:

А у Вас всегда нормально стартуют с первого раза? И, если не секрет, как Вы организовывали kilprocess? 

Да, всегда. Пока не замечал подобного бага.

И по поводу kill - модуль прикрепил.

android.KillMainProcess.zip

P.S.  Кстати, версии Android на которых проверял (с 4.0.2 по 6), а устройства - не очень много, но "разношерстные": Sony, Huawei, Samsung, Fly и т.д....

Изменено пользователем AlexG
Ссылка на комментарий
  • 0
1 час назад, Rusland сказал:

OnClose и OnDestroy срабатывают только если самому закрывать приложение и не срабатывают, когда программу убивает сама система, верно?

Присоединяюсь к вопросу. Тоже интересует, как корректно "убить" приложение во всех возможных случаях закрытия.

Ссылка на комментарий
  • 0
  • Модераторы
2 минуты назад, Rusland сказал:

Проверил, поставил Вибро на  OnClose и OnDestroy - тишина. Как-то беззвучно система убивает приложение, без предупреждения )

это ведь не Win, она не сообщает приложению что его хотят выгрузить. Иначе бы все приложения были-бы паразиты, никто бы не давал грохать.

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

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

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

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

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

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

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

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

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

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

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