Jump to content
  • Status: Closed
  • Priority: Normal
  • Resolution: Test case error
  • Platform: Android
  • Affects version: 1.16.3.0

Странная вещь. Первый старт - всё ок. Повторный - крашится. Опять старт - ок, следующий - крашится. Но если в обработчик события OnShow главной формы добавить вывод строки лога, то не крашится от слова совсем. Камментим вывод лога - опять старт через раз.

Пример в прицепе.

frameerror.zip


User Feedback

Recommended Comments

  • Administrators

Добрый день,

Не воспроизводится ошибка. Что делал:

  1. Запустил ваш проект с отладкой, все ок.
  2. Убрал из главной формы вывод TfgLog.Debug('1'); и запустил проект опять с отладкой, все ок.

Нужны какие-нибудь еще детали. Не плохо, будет прикрепить стек трейс, раз у вас приложение падает.

dervish00

Active subscription

Я не могу подхватить эту ошибку. Каждый раз приложение запускается с новым ID и выцепить его в лог вьювере не получается.

  • Administrators

Запустите приложение с отладкой из среды. Сразу поймаете исключение, если оно есть.

dervish00

Active subscription
"13.12.2023 15:58:43.587","E","pageboostd",5179,7986,"alp start : app rufgxframeerror"
"13.12.2023 15:58:43.588","E","pageboostd",5179,7986,"rufgxframeerror, amt 0 scnt 0 fcnt 0"
"13.12.2023 15:58:43.597","E","pageboostd",5179,7986,"rufgxframeerror, amt 20639744 scnt 9 fcnt 5"
"13.12.2023 15:58:43.597","E","pageboostd",5179,7986,"alp end : app rufgxframeerror data_amount 20639744"
"13.12.2023 15:58:44.821","E","WindowManager",4044,4064,"win=Window{e33a9e2 u0 Splash Screen ru.fgx.frameerror EXITING} destroySurfaces: appStopped=false win.mWindowRemovalAllowed=true win.mRemoveOnExit=true win.mViewVisibility=0 caller=com.android.server.wm.ActivityRecord.destroySurfaces:5261 com.android.server.wm.ActivityRecord.destroySurfaces:5242 com.android.server.wm.WindowState.onExitAnimationDone:5654 com.android.server.wm.WindowStateAnimator.onAnimationFinished:332 com.android.server.wm.WindowState.onAnimationFinished:6119 com.android.server.wm.-$$Lambda$dwJG8BAnLlvKNGuDY9U3-haNY4M.onAnimationFinished:2 com.android.server.wm.SurfaceAnimator.lambda$getFinishedCallback$0$SurfaceAnimator:112"
"13.12.2023 15:58:47.383","F","libc",7990,7990,"Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 7990 (.fgx.frameerror), pid 7990 (.fgx.frameerror)"
"13.12.2023 15:58:47.559","F","DEBUG",8076,8076,"pid: 7990, tid: 7990, name: .fgx.frameerror  >>> ru.fgx.frameerror <<<"
"13.12.2023 15:58:48.286","F","DEBUG",8076,8076,"      #00 pc 0108b672  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.286","F","DEBUG",8076,8076,"      #01 pc 0108b92f  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #02 pc 01230fb9  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #03 pc 0122ebcb  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #04 pc 0060dec1  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.289","F","DEBUG",8076,8076,"      #13 pc 000acc08  [anon:dalvik-classes4.dex extracted in memory from /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/base.apk!classes4.dex] (ru.fgx.core.service.FGXProxyInterface1.invoke+12)"
"13.12.2023 15:58:48.295","F","DEBUG",8076,8076,"      #39 pc 000ab04c  [anon:dalvik-classes4.dex extracted in memory from /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/base.apk!classes4.dex] (ru.fgx.core.FGXActivity.onDestroy+8)"
"13.12.2023 15:58:49.387","E","audit",3586,3586,"type=1701 audit(1702472329.381:3730): auid=4294967295 uid=10155 gid=10155 ses=4294967295 subj=u:r:untrusted_app:s0:c155,c256,c512,c768 pid=7990 comm="".fgx.frameerror"" exe=""/system/bin/app_process32"" sig=11"

 

dervish00

Active subscription

вот два запуска подряд

  • Administrators

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

dervish00

Active subscription

из среды если запускать, то нормально постоянно запускается, поэтому там я не поймаю

это только на устройстве

dervish00

Active subscription

сейчас заметил еще одну вещь - если делать два запуска с паузой, например секунд в 10, то второй раз запускается без ошибки. а если практически сразу - 1-2 секунды, то падает

  • Administrators

Попробуйте проверить еще раз проект, но убрав строчку из формы:

   {$IFDEF ANDROID}
   TfgAndroidHelper.Activity.Finish;
   {$ENDIF}

 

dervish00

Active subscription

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

  • Administrators

Так же не нужно удалять руками фрейм, так как он удаляется автоматически формой.

dervish00

Active subscription

нет, то же самое

dervish00

Active subscription
2 минуты назад, Yaroslav Brovin сказал:

Так же не нужно удалять руками фрейм, так как он удаляется автоматически формой.

нет, не помогло

  • Administrators

Этот код по идее тоже лишний. Потому что вы эти свойства указали в дизайнере для фрейма.

   FActiveFrameVisible.BeginUpdate;
   try
      FActiveFrameVisible.PositionMode := TfgPositionMode.Absolute;
      FActiveFrameVisible.RelativePosition.Top := 0;
      FActiveFrameVisible.RelativePosition.Bottom := 0;
      FActiveFrameVisible.RelativePosition.Left := 0;
      FActiveFrameVisible.RelativePosition.Right := 0;
   finally
      FActiveFrameVisible.EndUpdate;
   end;

Это вряд ли относится к вашей проблеме. Просто для информации.

dervish00

Active subscription

интересное дело, закомментировал ShowStartFrame, всё равно падает. т.е. дело не во фрейме

 

  • Administrators

Кстати, по стеку из лога:

"13.12.2023 15:58:48.286","F","DEBUG",8076,8076,"      #00 pc 0108b672  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.286","F","DEBUG",8076,8076,"      #01 pc 0108b92f  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #02 pc 01230fb9  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #03 pc 0122ebcb  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.287","F","DEBUG",8076,8076,"      #04 pc 0060dec1  /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/lib/arm/libframeerror.so"
"13.12.2023 15:58:48.289","F","DEBUG",8076,8076,"      #13 pc 000acc08  [anon:dalvik-classes4.dex extracted in memory from /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/base.apk!classes4.dex] (ru.fgx.core.service.FGXProxyInterface1.invoke+12)"
"13.12.2023 15:58:48.295","F","DEBUG",8076,8076,"      #39 pc 000ab04c  [anon:dalvik-classes4.dex extracted in memory from /data/app/~~7IwbB5pOpLhy3KXnC2J_OQ==/ru.fgx.frameerror-AjQRqsp9dEhkfsMw-udpzw==/base.apk!classes4.dex] (ru.fgx.core.FGXActivity.onDestroy+8)"

Падение вызвано закрытием формы. Так как по стеку есть FGXActivity.onDestroy. Этот метод вызывается именно при закрытии приложении с его разрушением. Вы точно убрали TfgAndroidHelper.Activity.Finish ?

Потому что деструктор формы в вашем случае вызывается как раз из onDestroy и в теории вложенный вызов повторного завершения активити может привести к неизвестным результатам.

dervish00

Active subscription

ага, удалил из проекта модуль с фреймом и всё заработало

  • Administrators

Есть подозрение на эту строчку кода в проектном файле:

  Application.CreateForm(TFrame1, Frame1);

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

dervish00

Active subscription
4 минуты назад, Yaroslav Brovin сказал:

Кстати, по стеку из лога: Вы точно убрали TfgAndroidHelper.Activity.Finish ?

да, конечно

dervish00

Active subscription
6 минут назад, Yaroslav Brovin сказал:

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

Бинго! Заработало

dervish00

Active subscription

Спасибо!

dervish00

Active subscription
(edited)
25 минут назад, Yaroslav Brovin сказал:

Этот код по идее тоже лишний. Потому что вы эти свойства указали в дизайнере для фрейма.

   FActiveFrameVisible.BeginUpdate;
   try
      FActiveFrameVisible.PositionMode := TfgPositionMode.Absolute;
      FActiveFrameVisible.RelativePosition.Top := 0;
      FActiveFrameVisible.RelativePosition.Bottom := 0;
      FActiveFrameVisible.RelativePosition.Left := 0;
      FActiveFrameVisible.RelativePosition.Right := 0;
   finally
      FActiveFrameVisible.EndUpdate;
   end;

Это вряд ли относится к вашей проблеме. Просто для информации.

кстати, если убрать этот код, то фрейм не растягивается, а остаётся в левом верхнем углу

 

добавлено: а нет, всё норм. это мой косяк - beginupdate не убрал

Edited by dervish00

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.