UMG Crashes on Android

Hey,

I’ve had this post on Answerhub for a while with other people having the same issue but I’ve still had no reply from Epic staff, so I thought I’d link it here in the hope of expanding the visibility.

This bug is stopping me from publishing my game, so any feedback would be greatly appreciated!


I’m getting a crash on Android when using UMG (when Play Animation is called)

I have multiple animations that I try and play, and each one crashes the game when they start to play. If I remove everything from the animation (so it basically tries to play an empty animation) then it works ok, so it feels like the crash is possibly to do with transforming a widget?

Anyway, this is the call stack I got from the mobile.
Any ideas how to fix this?

(Phone was a Samsung S8, using 4.17.1)


 

  1. D/UE4: Assertion failed: Pair != nullptr [File:Runtime/Core/Public/Containers/Map.h] [Line: 444]
  1. D/UE4: libUE4.so!FDebug::LogAssertFailedMessage(char const*, char const*, int, wchar_t const*, ...)
  1. D/UE4: libUE4.so!FMovieSceneRootEvaluationTemplateInstance::CallSetupTearDown(IMovieScenePlayer&, FDelayedPreAnimatedStateRestore*)
  1. D/UE4: libUE4.so!FMovieSceneRootEvaluationTemplateInstance::Evaluate(FMovieSceneContext, IMovieScenePlayer&, FMovieSceneSequenceID)
  1. D/UE4: libUE4.so!UUMGSequencePlayer::PlayInternal(double, double, double, double, int, EUMGSequencePlayMode::Type, float)
  1. D/UE4: libUE4.so!UUserWidget::PlayAnimation(UWidgetAnimation*, float, int, EUMGSequencePlayMode::Type, float)
  1. D/UE4: libUE4.so!UBP_MainMenu_C__pf2028121400::bpf__ExecuteUbergraph_BP_MainMenu__pf_5(int)
  1. D/UE4: libUE4.so!UUserWidget::execOnAnimationFinished(FFrame&, void*)
  1. D/UE4: libUE4.so!UFunction::Invoke(UObject*, FFrame&, void*)
  1. D/UE4: libUE4.so!UObject::ProcessEvent(UFunction*, void*)
  1. D/UE4: libUE4.so!UUserWidget::OnAnimationFinished(UWidgetAnimation const*)
  1. D/UE4: libUE4.so!UUserWidget::OnAnimationFinishedPlaying(UUMGSequencePlayer&)
  1. D/UE4: libUE4.so!TBaseUObjectMethodDelegateInstance<false, UUserWidget, void (UUMGSequencePlayer&)>::ExecuteIfSafe(UUMGSequencePlayer&) const
  1. D/UE4: libUE4.so!TBaseMulticastDelegate<void, UUMGSequencePlayer&>::Broadcast(UUMGSequencePlayer&) const
  1. D/UE4: libUE4.so!UUMGSequencePlayer::Tick(float)
  1. D/UE4: libUE4.so!UUserWidget::TickActionsAndAnimation(FGeometry const&, float)
  1. D/UE4: libUE4.so!UUserWidget::NativeTick(FGeometry const&, float)
  1. D/UE4: libUE4.so!SObjectWidget::Tick(FGeometry const&, double, float)

 

Cheers,
Chris