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

Issue 717721 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug-Regression
Proj-VR
Proj-XR

Blocked on:
issue 706842



Sign in to add a comment

Incompatible app message when exiting and re-entering presentation mode

Project Member Reported by dbbrooks@chromium.org, May 2 2017

Issue description

Chrome Version: 59.0.3071.33
OS: Android (Pixel, Pixel XL)
VR Services: 1.5.153389785

What steps will reproduce the problem?
(1) With daydream headset set to default
(2) go to https://webvr.info/samples/03-vr-presentation.html
(3) Select enter VR and follow DON flow
(4) swipe from right side of screen to bring up navigation buttons and press back to exit presentation mode
(5) quickly after exiting presentation mode hit enter VR again. 

What is the expected result? DON flow is triggered or presentation automatically starts.

What happens instead? (See screenshot) An error msg saying "Incompatible app. This cardboard application is not compatible with Daydream headsets." appears.

Repro's pretty easily if step 4 and 5 are repeated.
 
Screenshot_20170502-133931.png
68.3 KB View Download
Does this work in earlier versions? Is it perhaps a VR Services regression?
This is a dupe of 700166, but the behaviour has changed slightly. We removed the Manifest attributes that daydream looks at because we don't need them for the launchInVr flow we're using.

So now instead of getting a security exception and returning to controller pairing when Daydream tries to launch us directly, we get the incompatible app message.

I don't know which behaviour is better - both are bad, but this one at least doesn't leave the user stuck.
Cc: mthiesse@chromium.org meganlindsay@chromium.org
Maybe we need to ask Daydream to change behaviour here. They need a different fallback behaviour for when the activity they're trying to launch isn't exported.
Cc: nstoddard@google.com
> We removed the Manifest attributes that daydream looks at because we don't need them for the launchInVr flow we're using.

Can you talk more about this? Why was it removed? Every Activity which hosts a GvrLayout for Daydream purposes should have the DAYDREAM manifest attribute, regardless of whether or not it's exported.
Just a note, I see this on 1.6.156467194 vr services and 59.0.3071.81 Chrome as well.
Labels: -OS-All
Owner: mthiesse@chromium.org
Status: Assigned (was: Untriaged)
mthiesse: Please respond to #5 and confirm whether #6 is expected.
Still expected. Jared's questions were answered on the Daydream bug for this issue.

This issue should be fixed once we upgrade to the 1.6 SDK.
Blockedon: 706842
Labels: M-61
Labels: -Proj-VR Proj-VR-Daydream
Status: Started (was: Assigned)
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eafc049ccec45550ea86089c463918131d04e927

commit eafc049ccec45550ea86089c463918131d04e927
Author: mthiesse <mthiesse@chromium.org>
Date: Tue Jun 27 15:55:26 2017

Prevent "Incompatible App" message when entering VR.

This CL adds VR manifest filters to convince Daydream that Chrome supports
VR, to avoid Daydream showing the Incompatible App message.

We can finally do this because the 1.6 Daydream SDK allows us to provide
our own VR entry intent and avoid getting stuck on the contoller pairing
screen. Brief backstory on why we need our own VR entry intent is because
CustomTab cannot be resumed via Daydreams normal intent - it needs to be a
BroadcastIntent.

This means we can also remove the launchInVr() code and simply try to enter
VR when requested and the GvrLayout will handle calling the DON flow.

BUG= 717721 

Review-Url: https://codereview.chromium.org/2941173002
Cr-Commit-Position: refs/heads/master@{#482638}

[modify] https://crrev.com/eafc049ccec45550ea86089c463918131d04e927/chrome/android/java/AndroidManifest.xml
[modify] https://crrev.com/eafc049ccec45550ea86089c463918131d04e927/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
[modify] https://crrev.com/eafc049ccec45550ea86089c463918131d04e927/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java

Status: Fixed (was: Started)
Components: Blink>WebXR

Sign in to add a comment