Search Issue Tracker

Won't Fix

Votes

19

Found in [Package]

1.3.1

Issue ID

AVPB-759

Regression

No

[VisionOS] Software Keyboard appears in seemingly random locations when user activates input field

Package: PolySpatial visionOS

-

Reproduction steps:
1. Open the attached “Repro“ project
2. Build the project on “visionOS” platform (File > Build Settings > visionOS > Build)
3. Run the build on an Apple Vision Pro device or visionOS simulator
4. Select the Input Field
5. Observe where the keyboard appears

Expected result: It appears inside the user’s view in a way that is easily accessible and makes sense for the user
Actual result: The keyboard spawns below, above, or somewhere around you, but not in front of you

Reproducible with: 1.2.3, 1.3.1 (2022.3.42f1)
Couldn’t test with: 2.0.0-pre.9 (6000.0.15f1)

Reproducible on: MR on visionOS 2.0 Simulator - built using M1 Max MacOS 14.5
Not reproducible on: No other environment tested

  1. Resolution Note:

    There are no fixes planned for this Bug

Comments (8)

  1. timc-unity

    Feb 11, 2025 22:51

    Hi all-

    We've been exploring alternate approaches for text entry on visionOS, and my team has verified that the Spatial Keyboard is a viable alternative on visionOS and PolySpatial. This is a free solution available provided by Unity, and includes source code, allowing you to customize or even reskin the keyboard according to your needs.

    To install it, please add the XRI package to your project, then install the *starter assets* and *the Spatial Keyboard* samples.

    After doing so, you can drag the **XRI Keyboard prefab** under `Samples -> XR Interaction Toolkit -> 3.0.7 -> XRI Keyboard -> Prefabs` and drop it in the scene view. Then, for each input field you will need to add the `XRKeyboardDisplay` behavior and set appropriate references.

    While we believe this offers a viable alternative for basic text entry in visionOS, there are some caveats:

    * The XRI keyboard does not include built-in localization. You can address this in part using keyboard layouts (see `XRKeyboardLayout`)
    * The XRI keyboard does not support emojis, auto-completion, or voice-based text entry.

    The XRI keyboard is an alternative to, not a replacement for, the system keyboard, but hopefully some developers can work around blocking issues using this approach. If and when the visionOS system keyboard surfaces additional customization options, we intend to expose those for Unity projects as well.

    Please reach out if you have further questions or comments!

    Thanks,
    --Tim

  2. timc-unity

    Feb 06, 2025 22:30

    We’ve marked this bug “Won’t Fix” to be transparent about the fact that we unfortunately cannot fix it without Apple’s help, however much we’d like to. Their available system APIs simply do not provide affordances to manually position the system keyboard in 3D space, and the heuristics they use internally aren’t reliable for spatial content. We’ve raised this concern with them several times, even prior to our initial release, as we’re aware it’s a major issue.

    Apples does listen to developer feedback–sometimes more closely than middleware feedback!–so I strongly encourage you to reach out to Apple support directly or through bugs to raise your concern about this issue.

    In the interim, we are investigating other options, such as the possibility of implementing our own on-screen keyboard as an alternative to the system one. While I know it’s not a perfect solution, there are also onscreen keyboard solutions in the Unity Asset Store at a modest price from third parties. Another option is to implement your UI using Swift UI, which allows you to continue using Unity for 3D authoring but use Apple’s native UI, for which they provide greater support.

    Please reach out if there’s more we can do to help; we really do want to fix this issue, but our hands are currently tied.

  3. ARGs_code

    Feb 06, 2025 19:30

    Updated to "Won't fix"?...... That is very disappointing.

    This is a huge show stopper for any serious attempts at building enterprise applications with Unity on the Apple Vision Pro. Input Fields are required for a whole host of things.

    So I guess we'll consider migrating away from Unity completely for our AVP development.

    Apple has likewise been unresponsive to requests to fix this, just like Unity. This is quite frustrating as this functionality feels like it should be quite basic for applications functioning in Mixed Reality.

  4. YG-Unity14

    Dec 16, 2024 13:57

    Any updates on this issue?

  5. trav-h4tch

    Oct 14, 2024 00:09

    Any updates? This is still a big issue.

  6. rMadrid13

    Sep 26, 2024 16:56

    I have performed the tests on the Apple Vision Pro device with VisionOS v2.0, the results I got in MR with Bounded Volume were satisfactory, while in Unbounded Volume they were not, the issue persists and the keyboard is not displayed in the user view, even in the v2.0.0-pre.11 (6000.0.20f1).

  7. trav-h4tch

    Sep 26, 2024 16:30

    We are having this issue on device using 2.0.0-pre.9 (6000.0.15f1).

    A fix is highly desired, considering our workaround is to spawn an alert asking the user to depress the bezel on the device to bring the keyboard into view.

    This issue has been reported in the past by others to cause the app to fail approval by Apple.

  8. DD_Developer

    Aug 12, 2024 15:15

    I see that the listed reproduction appears to only have been done in the Vision OS simulator. Please note that in our own testing we have noticed that behavior in the Simulator is different than behavior on the actual Apple Vision Pro.

    Please ensure that any fix works as intended not only in the Simulator, but also on device.

    Thank you!

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.