New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 758012 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug-Regression
Proj-XR



Sign in to add a comment

WebVR reports no displays occasionally

Project Member Reported by dbbrooks@chromium.org, Aug 22 2017

Issue description

Chrome Version:	62.0.3193.3
VrCore:	1.8.163477258
Device: Nexus 5X

What steps will reproduce the problem?
(1) Enable the webvr flag
(2) Go to konterball.com
(3) Follow prompts to start VR game

What is the expected result? WebVR is used

What happens instead? Polyfill implementation used instead (see screenshot)

Also occurs on other external sites. (bear, sketchfab, etc)
 
Screenshot_20170822-155246.png
118 KB View Download
Labels: M-62
Status: Unconfirmed (was: Untriaged)
Components: -Internals>VR Blink>WebVR
Owner: dbbrooks@chromium.org
Not reproing on 3193.0 w/ Konterball. Did you enable the gamepad extension flag as well?
Labels: Needs-Feedback
Yes, the gamepad extension is enabled as well. So the gamepad extension flag needs to be disabled? When it's disabled the issue doesn't repro.
Project Member

Comment 5 by sheriffbot@chromium.org, Aug 23 2017

Cc: sandeepkumars@chromium.org
Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "sandeepkumars@chromium.org" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: Available (was: Unconfirmed)
Just to clarify - not reproing on Pixel XL w/ Daydream View. Appears to be cardboard specific.
Owner: ----
Not reproing on a 6p with cardboard, with webvr enabled (and gamepad extensions either enabled or disabled).
Labels: Needs-Feedback
Owner: dbbrooks@chromium.org
Status: Unconfirmed (was: Available)
David, are you still able to repro? Is this a 5x only issue?
Labels: TE-DesktopTriage
Components: Blink>Internals
Labels: -Type-Bug Type-Bug-Regression
Owner: mthiesse@chromium.org
Status: Assigned (was: Unconfirmed)
dbbrooks showed me a repro on the 5X. He then closed Chrome and was unable to repro it after reopening Chrome. After a while, he was able to repro again.

While in the broken state, I navigated to https://webvr.info/samples/03-vr-presentation.html in a new tab. That page displays "WebVR supported, but no VRDisplays found." Thus, it appears that this is NOT related to the WebVR API but rather GVR usage or something else.

After closing and reopening Chrome, it did not reproduce.

dbbrooks doesn't think he exited Chrome before reproing the second time. He was repeatedly opening the page from the NTP. However, the "stickiness" would make sense for a GVR issue.

Assigning to mthiesse who was commenting on GVR lifetime in another issue.

If we can repro on a Daydream-ready device, we could also see what happens when trying to use the VR browser.
Labels: -Needs-Feedback
Labels: -TE-DesktopTriage
Perhaps interesting info from logs:
09-05 10:28:24.091  7764  7764 E ActivityThread: Activity org.chromium.chrome.br
owser.ChromeTabbedActivity has leaked IntentReceiver org.chromium.chrome.browser
.vr_shell.VrShellDelegate$VrBroadcastReceiver@d904533 that was originally regist
ered here. Are you missing a call to unregisterReceiver()?
09-05 10:28:24.091  7764  7764 E ActivityThread: android.app.IntentReceiverLeake
d: Activity org.chromium.chrome.browser.ChromeTabbedActivity has leaked IntentRe
ceiver org.chromium.chrome.browser.vr_shell.VrShellDelegate$VrBroadcastReceiver@
d904533 that was originally registered here. Are you missing a call to unregiste
rReceiver()?
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.LoadedApk
$ReceiverDispatcher.<init>(LoadedApk.java:918)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.LoadedApk
.getReceiverDispatcher(LoadedApk.java:719)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.ContextIm
pl.registerReceiverInternal(ContextImpl.java:1172)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.ContextIm
pl.registerReceiver(ContextImpl.java:1152)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.ContextIm
pl.registerReceiver(ContextImpl.java:1146)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.content.Conte
xtWrapper.registerReceiver(ContextWrapper.java:554)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrShellDelegate.getEnterVrPendingIntent(VrShellDelegate.java:69)

09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrShellImpl.<init>(VrShellImpl.java:5)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrClassesWrapperImpl.createVrShell(VrClassesWrapperImpl.java:9)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrShellDelegate.createVrShell(VrShellDelegate.java:546)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrShellDelegate.enterVrWithCorrectWindowMode(VrShellDelegate.jav
a:196)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at org.chromium.chrome.b
rowser.vr_shell.VrShellDelegate$3.run(VrShellDelegate.java:3)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.os.Handler.ha
ndleCallback(Handler.java:739)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.os.Handler.di
spatchMessage(Handler.java:95)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.os.Looper.loo
p(Looper.java:148)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at android.app.ActivityT
hread.main(ActivityThread.java:5417)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at java.lang.reflect.Met
hod.invoke(Native Method)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at com.android.internal.
os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
09-05 10:28:24.091  7764  7764 E ActivityThread: 	at com.android.internal.
os.ZygoteInit.main(ZygoteInit.java:616)


Not yet sure whether this is related to the bug.

In logcat, I did not see anything related to "Unable to instantiate VrClassesWrapper", so we appear to have loaded the library correctly, failed outside of createVrClassesWrapper, or failed because of ClassNotFoundException.

Given the error in logcat, I think we could be keeping some stale state or objects around sometimes, which cause future invocations of VR to fail.  I'm having trouble trying to attach a java debugger to chrome to investigate current state to see if this is plausible.

I don't think those logs are relevant. We should probably be calling sVrBroadcastReceiver.unregister() from destroy() though...
Owner: billorr@chromium.org
Summary: WebVR reports no displays occasionally (was: webVR is not being used on M62)
It's actually quite possible that my refactor here will fix this: https://chromium-review.googlesource.com/c/chromium/src/+/655122
(But don't get your hopes up)
Labels: -M-62 M-63
Owner: mthiesse@chromium.org
Giving this to you temporarily, Michael, to see if your change happens to fix the issue. (Might want to assign to dbbrooks@ after your change lands so he can see if it's fixed.)
Owner: dbbrooks@chromium.org
dbbrooks, can you still repro this?
Labels: Needs-Feedback
Labels: -Needs-Feedback
Owner: mthiesse@chromium.org
I am not able to repro this on Chrome 62.0.3202.29. However, there was never a guaranteed repro. I just tried entering and exiting for ~ 15 minutes and crossed my fingers.

Assigning this back to you Michael to decide whether to mark as obsolete.
Status: WontFix (was: Assigned)
I don't know what to do here. I can't repro so there's nothing actionable here for me. Hopefully this got magically fixed either through Daydream or Chrome fixes.

I'm going to close this issue, but please re-open if this resurfaces.
Components: Blink>WebXR

Sign in to add a comment