Skip to content

Conversation

@MaxPalmer-UH
Copy link
Contributor

@MaxPalmer-UH MaxPalmer-UH commented Nov 24, 2025

Summary

Updates the LeapC client libraries to 7.4.X, adding an iOS client too. Because the newest Android client no longer supports binding to a service (and changes permissions - e.g. camera permissions), we bundle two clients (one with a LeapCLegacy name), switching which is in use based on whether Android and XR/VR are being used or not.

Newer Android clients expect to read the device firmware version when obtaining DeviceInfo - assuming they connect to a recent service. This field has been added and set to unknown if the service is older.

Note, testing with Quest 3 and service version 6.20 appears to show hand tracking is broken. A Pico + Leap 2 showed signs of life with LeapC.

In future w.b.n. to get a 16 byte aligned 6.2 client.

Contributor Tasks

  • Add a CHANGELOG entry for this change.
  • Ensure documentation requirements are met e.g., public API is commented.
  • Consider any licensing/other legal implications for this MR e.g. notices required by any new libraries.

Reviewer Tasks

  • Code reviewed.
  • Non-code assets e.g. Unity assets/scenes reviewed.
  • All tests must be ran and cover all scenarios (If not, add new tests to the cycle and run them).
  • Documentation has been reviewed.
  • Approve with a comment of any additional tests run or any observations.

Related JIRA Issues

If this MR closes any JIRA issues list them below in the form Closes PROJECT-#

Pull Request Templates

Switch template by going to preview and clicking the link - note it will not work if you've made any changes to the description.

You are currently using: default.md

Note: these links work by overwriting query parameters of the current url. If the current url contains any you may want to amend the url with &template=name.md instead of using the link. See query parameter docs for more information.

Max Palmer and others added 7 commits November 12, 2025 16:07
…xamples folder, if let over from a previous plugin. Prevents being prompted to upgrade if on BiRP
…reading firmware versions for latest service. First attempt at supporting old Android XR clients
…ServiceBinder to maintain support for XR clients on Android
…id before trying to Bind. Minor meta file fixes. Improved debugging
@MaxPalmer-UH MaxPalmer-UH changed the title DRAFT: Update the LeapC client libraries and continue to support older Android XR clients using an older LeapC client. Update the LeapC client libraries and continue to support older Android XR clients using an older LeapC client. Nov 24, 2025
Copy link
Member

@rblenkinsopp rblenkinsopp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good, my main questions are:

  • Do we want to be including the HandTrackingServer.framework? This is needed to embed the tracking server, but we don't currently include the bindings for it, and this is normally done in the server part of the app at the moment? I'd almost be tempted to do this as a seperate package?

  • Looks like Git LFS might be doing some strange behaviour, can you check the filters are correct and all files you expect to be LFS are?

Comment on lines +1 to +3
version https://git-lfs.github.com/spec/v1
oid sha256:2d6d339acfe4991b90b9a3a68774759cc96649481529839212d0ed68c4557b97
size 5138512
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we check tha this is correct, this is a Git LFS header, but it's wierd that it's shown, it's almost like it's been added as a Git LFS file, but not committed as one...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's weird. I'll check

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hopefully that's fixed now.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On the packaging of HandTrackerServer.framework, I can remove it. I'm keen otherwise to get this merged for Luke.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants