App not launching from PC to Quest 2

I have successfully:

  1. Built my app into an apk
  2. Uploaded it to Quest AppLab
  3. Installed the app on my Quest 2
  4. Run the app on the headset

And:

  1. Set up a virtual reality test project with the starter content
  2. Launched it on my Windows PC to the headset

But, when I try to run my app on the PC, it never launches to the headset.

The launcher seems to hang for a long time after I see this in the log:

LogPlayLevel: UAT: Creating UECommandLine.txt

Right before that, I see these outputs:

[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT: Running: C:\Users\neil\AppData\Local\Android\Sdk\platform-tools\adb.exe -s 1WMHHB62C82126 shell pm grant com.threedee.Slitherlink3D android.permission.READ_EXTERNAL_STORAGE
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT: Exception occurred while executing 'grant':
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT: java.lang.SecurityException: Package com.threedee.Slitherlink3D has not requested permission android.permission.READ_EXTERNAL_STORAGE
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermissionInternal(PermissionManagerService.java:1559)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:1465)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.permission.PermissionManager.grantRuntimePermission(PermissionManager.java:378)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerShellCommand.runGrantRevokePermission(PackageManagerShellCommand.java:2393)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:260)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.os.ShellCommand.exec(ShellCommand.java:40)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:24876)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.os.Binder.shellCommand(Binder.java:950)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.os.Binder.onTransact(Binder.java:834)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4834)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:8894)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.os.Binder.execTransactInternal(Binder.java:1184)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT:        at android.os.Binder.execTransact(Binder.java:1143)
[2024.03.14-20.55.22:847][ 88]LogPlayLevel: UAT: Took 0.05s to run adb.exe, ExitCode=255
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT: Running: C:\Users\neil\AppData\Local\Android\Sdk\platform-tools\adb.exe -s 1WMHHB62C82126 shell pm grant com.threedee.Slitherlink3D android.permission.WRITE_EXTERNAL_STORAGE
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT: Exception occurred while executing 'grant':
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT: java.lang.SecurityException: Package com.threedee.Slitherlink3D has not requested permission android.permission.WRITE_EXTERNAL_STORAGE
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermissionInternal(PermissionManagerService.java:1559)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:1465)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.permission.PermissionManager.grantRuntimePermission(PermissionManager.java:378)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerShellCommand.runGrantRevokePermission(PackageManagerShellCommand.java:2393)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:260)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.os.ShellCommand.exec(ShellCommand.java:40)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:24876)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.os.Binder.shellCommand(Binder.java:950)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.os.Binder.onTransact(Binder.java:834)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4834)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:8894)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.os.Binder.execTransactInternal(Binder.java:1184)
[2024.03.14-20.55.22:890][ 88]LogPlayLevel: UAT:        at android.os.Binder.execTransact(Binder.java:1143)
[2024.03.14-20.55.22:901][ 88]LogPlayLevel: UAT: Took 0.05s to run adb.exe, ExitCode=255

I have my project set up to have read and write external permissions:

Any suggestions?

Could it be that there is some conflict because I deployed the app to Quest AppLab?

I figured it out.

I ran into the problem described here:
UE5 Oculus Quest 2 launching app in shipping build loads forever

I set my project to Development and it worked fine.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.