05-14-2025 03:08 PM
Device: Quest Pro
My app, built with Unity, runs once and then no longer works. On subsequent starts it never shows anything and just hangs on starting up, eventually I get a prompt that it is not responding and asking whether to abort or wait. This behavior never occurred on previous versions of meta horizon OS. I will attach logcat output.
If I select "wait" I see these messages accumulate:
2025-05-14 21:25:16.340 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:25:17.385 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:25:26.151 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:24.074 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:40.474 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap CONTROLLER_RIGHT: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:40.485 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:49.674 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap CONTROLLER_LEFT: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:49.674 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap CONTROLLER_RIGHT: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:49.685 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:57.940 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap CONTROLLER_LEFT: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:57.941 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap CONTROLLER_RIGHT: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
2025-05-14 21:26:57.951 12307 12418 Warn MemoryBrokerClient Controllers: failed to remap INPUT_TYPE_MAP: getSharedMemoryFileDescriptor (Status(-1, EX_SECURITY): 'missing runtime permission(s)')
05-14-2025 04:01 PM
The storage permission was not enabled. When I enabled it in the permissions menu in horizon OS, the app no longer hangs. There was no prompt presented to turn it on.
05-14-2025 08:24 PM
I had a similar problem. It would ask on the first run, then hang.
It then would run on the second run. I added a check that forced a check.
Needing this changes often when the headset is updated. Sometimes it needs this code, other times it hangs the app and does it without me having this code.
#if UNITY_ANDROID
if (AndroidPermissions.CheckMicPermissions() == false) {
Debug.Log("Please give the application permission to use the microphone. Requesting permission.");
AndroidPermissions.GetMicPermission();
if (AndroidPermissions.CheckMicPermissions() == false) {
Debug.Log("Could not get microphone permission.");
} else {
Debug.Log("The application now has permission to use the microphone.");
}
} else {
Debug.Log("The application has permission to use the microphone.");
}
#endif