Forum Discussion

ryu.xr's avatar
ryu.xr
Explorer
5 months ago

Switch to Controllers prompt - Scriptable Testing Services for E2E Testing

In the latest META OS v74 update, a new dialog prompt is being invoked on the headset for the user to "Switch to controllers" that interferes with test automation. 

According to the docs, certain properties are configurable via Android Debug Bridge (adb) to control services that interfere with automation.

https://developers.meta.com/horizon/documentation/unity/ts-scriptable-testing/

Despite confirming that guardian, proximity sensor, and dialogs are disabled, the prompt is still being shown and interrupting end to end tests.

>adb shell content call --uri content://com.oculus.rc --method GET_PROPERTY
Result: Bundle[{disable_guardian=true, set_proximity_close=true, disable_dialogs=true, disable_autosleep=true}]

Has anyone else found a way around this? 

5 Replies

  • I have been struggling with this since Thursday also.  I found a post describing how to add AndroidManifest.xml: https://discussions.unity.com/t/cant-build-oculus-quest-2-3-apps-without-a-controller-requirement/938523  But the manifest attached there didn't fix it for me.  I discovered the Maestro app doesn't show this prompt and used apktool to extract its manifest, then wrote one based on that which seems to work for me.  The key appears to be adding the handtracking stuff.

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.your.application"
        android:versionCode="1"
        android:versionName="1.0">
    
        <uses-sdk android:minSdkVersion="29" android:targetSdkVersion="33" />
    
        <!-- Permissions for VR -->
        <uses-feature android:name="oculus.software.handtracking" android:required="false" android:version="1"/>
        <uses-permission android:name="oculus.permission.handtracking"/>
        <uses-feature android:name="android.hardware.vr.headtracking" android:required="true" android:version="1" />
        <uses-permission android:name="com.oculus.permission.HAND_TRACKING"/>
    
        <application
            android:allowBackup="true"
            android:supportsRtl="true">
    
            <meta-data android:name="unity.launch-fullscreen" android:value="True" />
    
            <!-- Main Unity Activity -->
            <activity android:name="com.unity3d.player.UnityPlayerActivity"
                      android:launchMode="singleTask"
                      android:configChanges="keyboardHidden|orientation|screenSize|uiMode|screenLayout|smallestScreenSize|fontScale"
                      android:screenOrientation="landscape"
                      android:resizeableActivity="false">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
    </manifest>

     

  • We also have been dealing with this issue. I've tried many things to bypass the dialog with adb commands but have not been able to come up with a solution. This blocks all of our test automation.

  • mfmf's avatar
    mfmf
    Oculus Staff

    Yup, looks like we regressed this in v74. Thanks for the flag, we are working to land a fix.

    • c.fuentes.miris's avatar
      c.fuentes.miris
      Honored Guest

      Hi! Is there a bug or task opened that is tracking this issue? 
      Are there any workarounds while the fix is landed?