Game crashes when launching on Quest

Hi All,

I am a newbie to VR development but its been a really exciting experience so far!! I would love some help or direction on this issue i have been encountering for the past cpl days… We are working on a new VR game and so far had almost no issues with development… usually I work with VR preview using the link and was starting to prepare the first native build for quest to test on the device itself.

I have noticed that only when deploying the game on the device it crashes on launch and was able to localize this to the pawn i am using (when removed from the map, the application launches successfully).

Unfortunately there is very little information about the crash itself… from the device’s perspective the app just launches, black screen then closes with a pop up saying it closed. From logcat i can see the actual stack pointing at some serialization code being asserted while loading the map:


LogPlayLevel: 06-17 23:00:22.277 22279 22363 D UE4 : [2020.06.18-03.00.22:277] 0]LogTcpMessaging: Discovered node 'EDB205FE4D9769376447FB835ACD91C4' on connection '127.0.0.1:47024'...
LogPlayLevel: Error: 06-17 23:00:22.456 22279 22299 D UE4 : [2020.06.18-03.00.22:456] 0]LogUObjectBase: Error: Virtual functions table is invalid.
LogPlayLevel: Warning: 06-17 23:00:22.456 22279 22299 D UE4 : [2020.06.18-03.00.22:456] 0]LogOutputDevice: Warning:
LogPlayLevel: 06-17 23:00:22.456 22279 22299 D UE4 :
LogPlayLevel: 06-17 23:00:22.456 22279 22299 D UE4 : Script Stack (0 frames):
LogPlayLevel: 06-17 23:00:22.456 22279 22299 D UE4 :
LogPlayLevel: 06-17 23:00:22.502 22279 22299 D UE4 : Assertion failed: Object->IsValidLowLevelFast() [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp] [Line: 3710]
LogPlayLevel: 06-17 23:00:22.502 22279 22299 D UE4 :
LogPlayLevel: 06-17 23:00:22.502 22279 22299 D UE4 : [2020.06.18-03.00.22:502] 0]Assertion failed: Object->IsValidLowLevelFast() [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp] [Line: 3710]
LogPlayLevel: 06-17 23:00:22.502 22279 22299 D UE4 :
LogPlayLevel: Error: 06-17 23:00:22.502 22279 22299 D UE4 : [2020.06.18-03.00.22:502] 0]LogAndroid: Error: === Critical error: ===
LogPlayLevel: Error: 06-17 23:00:22.502 22279 22299 D UE4 : [2020.06.18-03.00.22:502] 0]LogAndroid: Error:
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: Assertion failed: Object->IsValidLowLevelFast() [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp] [Line: 3710]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error:
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C8FC8BFC libUE4.so(0x0000000006816BFC)!FAsyncPackage::Event_StartPostload() ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C8FCA214 libUE4.so(0x0000000006818214)!FAsyncLoadingThread::ProcessAsyncLoading(int&, bool, bool, float, FFlushTree*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C8FD39C8 libUE4.so(0x00000000068219C8)!FAsyncLoadingThread::TickAsyncThread(bool, bool, float, bool&, FFlushTree*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C8FD2B1C libUE4.so(0x0000000006820B1C)!FAsyncLoadingThread::TickAsyncLoading(bool, bool, float, FFlushTree*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C8FE33FC libUE4.so(0x00000000068313FC)!FAsyncLoadingThread::FlushLoading(int) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C9272EE0 libUE4.so(0x0000000006AC0EE0)!LoadPackageInternal(UPackage*, char16_t const*, unsigned int, FLinkerLoad*, FArchive*, FUObjectSerializeContext*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C9270CB0 libUE4.so(0x0000000006ABECB0)!LoadPackage(UPackage*, char16_t const*, unsigned int, FArchive*, FUObjectSerializeContext*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000CCBBE984 libUE4.so(0x000000000A40C984)!UEngine::LoadMap(FWorldContext&, FURL, UPendingNetGame*, FString&) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000CCBBAC78 libUE4.so(0x000000000A408C78)!UEngine::Browse(FWorldContext&, FURL, FString&) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000CC17D380 libUE4.so(0x00000000099CB380)!UGameInstance::StartGameInstance() ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C7AC50A8 libUE4.so(0x00000000053130A8)!FEngineLoop::Init() ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C7AC3FF4 libUE4.so(0x0000000005311FF4)!AndroidMain(android_app*) ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C7AD39CC libUE4.so(0x00000000053219CC)!android_main() ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000C7B02AD8 libUE4.so(0x0000000005350AD8)![Unknown]() ]
LogPlayLevel: Error: 06-17 23:00:22.503 22279 22299 D UE4 : [2020.06.18-03.00.22:503] 0]LogAndroid: Error: [Callstack] 0x00000000EBAD3D84 libc.so(0x0000000000047D84)![Unknown]() ]
LogPlayLevel: Error: 06-17 23:00:22.504 22279 22299 D UE4 : [2020.06.18-03.00.22:504] 0]LogAndroid: Error: [Callstack] 0x00000000EBAA6036 libc.so(0x000000000001A036)![Unknown]() ]
LogPlayLevel: Error: 06-17 23:00:22.504 22279 22299 D UE4 : [2020.06.18-03.00.22:504] 0]LogAndroid: Error:
LogPlayLevel: Error: 06-17 23:00:22.504 22279 22299 D UE4 : [2020.06.18-03.00.22:504] 0]LogAndroid: Error:
LogPlayLevel: Error: 06-17 23:00:22.504 22279 22299 D UE4 : [2020.06.18-03.00.22:504] 0]LogAndroid: Error:
LogPlayLevel: Error: 06-17 23:00:22.504 22279 22299 D UE4 : [2020.06.18-03.00.22:504] 0]LogAndroid: Error:
LogPlayLevel: 06-17 23:00:22.524 22279 22299 D UE4 : [2020.06.18-03.00.22:524] 0]LogAndroid: FAndroidMisc::RequestExit(1)
LogPlayLevel: Took 0.1389991s to run adb.exe, ExitCode=0
LogPlayLevel: Running: C:\Users\etays\AppData\Local\Android\Sdk\platform-tools\adb.exe -s 1PASH9ATZJ0197 logcat

My main issue is how to debug this problem… since it wont crash when launching via link i can only depend on output logs from the device (i have yet to figure out how to remote debug the app from the device if that is possible). and as of now resorting to the good ole approach of re-creating my pawn step by step to see what starts this issue…

Im including screenshots of the ChildActor which i think is causing this (removing it from the pawn stops the crashes) but i have also attempted to remove all the execution paths in the blueprints and still it was crashing so i suspect one of the scene components (possibly the Widget) is causing this somehow but its nothing other than a guess really.

Iv attempted to restart the quest after launching a build to see if a restart would help but that does not work as well unfortunately. any help with approach to figuring this out would be really appreciated :smiley:

I am using UE 4.25.1 (Launcher build ver. 4.25.1-13594126) with OculusVR plugin version 1.44.0. and Trying to run on Oculus Quest 64GB.

thx in advance!!

e

UPDATE:

While I still don’t know what is causing the crash itself, I can confirm it is localized to Widget component that is within a child actor.

Once I moved all the widget components out of any child actors and into the main Pawn that is being used the application no longer crashing on startup. I am not aware of any restrictions with respect to Widget components within child actors but it seems that just having one is sufficient to crash the app (regardless of whether it has a UUserWidget assigned or not)

I know this is late, but i had crash issues with oculus quest on UE4.25.4. The log just indicated a SIGSEGV caused by Ue4.so and I couldn’t find any clue that would help to find the issue. In the end, I tried changing from armv7 to arm64 and that worked, good luck to anybody encountering that.