WebXR mode does not time out when it fails
petr-hajek opened this issue · comments
Description
- Go to https://modelviewer.dev/ with affected device
- click the AR button for the default model
- Console logs: Attempting to present in AR with WebXR...
- Nothing happens. It never times out to try the SceneViewer. Clicking the AR button again does not do anything.
When tested with SceneViewer as a first option it works.
Expected:
Underlying issue is related to Samsung (or Chrome), but it should still fail gracefully and try SceneViewer in case there's some issue with WebXR.
Problem will be somehwere here, that this await never times out:
Live Demo
Version
- model-viewer: v3.4.0
Tested also with 3.5.0 and occurs as well
Browser Affected
- Chrome, version: 124.0.6367.82
OS
- Android v14
Replicated on Samsung S24+ and S22+
Affects OS with One UI 6.1. Tested on one device, it started occuring ater updating from One UI 6.0 to 6.1.
AR
- WebXR
At the moment I only have Pixel devices on hand, but I can confirm that the Pixel 6, 7, and 8 are not seeing this regression on Android 14, so it's likely something to do with the Samsung software like @petr-hajek theorized.
That said, there's a few different places in the ARRenderer that the await
could be getting hung up on, and it would be helpful to know which is was. Some would be more practical to put timeout logic around than others.
rAF:
Session:
Reference Space:
Can you also provide the full chrome://version string including the bitness of Chrome? (32 vs 64)?
@alcooper91 Chrome: 124.0.6367.113 (Official Build) (64-bit)