cancel
Showing results for 
Search instead for 
Did you mean: 

Dual mode app (for GearVR) questions

Anonymous
Not applicable
Hi, so I have an app which uses 3 possible rendering engines depending on the type of device it's connected to (GL, GoogleVR/Daydream, Oculus). For some devices (like Samsung S8) it's possible to use it in all 3 of these modes depending on the headset it's put into. Everything works as expected in "developer" mode, but in "non-developer" mode, there are some issues getting it to work with GearVR.

If I set "com.samsung.android.vr.application.mode" option in the manifest to "vr_only", then the GearVR part works, but it's not possible to use the other platforms as the app insists that the phone needs to be inserted into the GearVR. If I set the option to "dual" then everything else works, except for GearVR. Putting the device into the GearVR while the app is running will send it to background, and there's no way to start it from Oculus Home (my GearVR doesn't show "unknown sources"). Also, there doesn't seem to be a way for the app to detect that the phone has been put into the GearVR.

So my questions are:

1) How do I detect that the phone has been put into the GearVR?
2) How do I get my app to stay in the foreground when putting it into the GearVR?

I want to run this from a single APK that can be deployed on Android, Daydream, GearVR or Oculus Go/Quest. It doesn't use Unity or Unreal.

TIA

2 REPLIES 2

Anonymous
Not applicable
The lack of response, any success story anywhere, or anything I've tried working leads me to conclude that there is no such thing as a "dual" mode app. Will just have to release 2 APKs, one with "vr_only" in manifest for GearVR/Oculus and one without for everything else. App does runtime check for presence of "vr_only" to determine whether it should start in "Oculus" mode.

Chris10001
Honored Guest
I'm interested in solving this too - is there any documentation for how to make an app only start in the "right" mode?
If my sideloaded VR app is started in 2D mode by mistake, the only solution is to restart the device to get rid of the black screen.

So I would like to find a way - I guess with a Manifest xml, to prevent the app from being launched in the wrong mode