Search Issue Tracker
By Design
Votes
0
Found in
2018.4
2018.4.12f1
2020.1
Issue ID
1209502
Regression
No
[iOS] Crash in MarkObjectAsRoot() when loading asset async
Steps to reproduce:
1. Open original user project "AsyncUploadManagerError.zip"
2. Build for iOS and deploy the Xcode project to the iOS device
-observe the crash-
Reproduced in: 2018.4.15f1, 2019.2.17f1, 2019.3.0f4, 2020.1.0a18
Could not test in 2017.4 due to console errors
Devices reproduced on:
iPhone 11 iOS 13.0
Devices not reproduced on:
VLNQA00257, Sony Xperia XZ Premium (G8141), Android 9, CPU: Snapdragon 835 MSM8998, GPU: Adreno (TM) 540
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Some UXML Template Asset foldouts appear enabled when all fields inside are disabled
- URP Terrain Demo crash on burst_signal_handler after Generating lighting
- Project window button icons are poorly visible and their shades differ in Light theme
- GC.Alloc called by HDRenderPipeline.LensFlareMergeOcclusionDataDrivenPass() when playing the default HDRP Sample Template project
- Automatic LOD fails and SRP Batcher incompatibility occurs when using spline-based quad-topology meshes
Resolution Note (2020.1.X):
Managed to reproduce the issue, but only using official build. Probably related to XCode version used on Katana (my local one is newer).
Either way, the issue is caused by "Strip Engine Code" checkbox in Player Settings. When unchecked, everything works. When checked, a bunch Class ID not found errors appear followed by a crash (when using locally build Unity I don't get crash, but errors still appear).
This means that the project loads asset bundles that use features that aren't used otherwise in the project. This isn't supported scenario, user should either have a dummy scene in the project that does use the same features or to have proper link.xml file (https://docs.unity3d.com/Manual/IL2CPP-BytecodeStripping.html) to prevent stripping of used features. Or disable engine code stripping, but the last one is probably undesired due to increase in size.