Apple Grants Zoom for iPad an Exclusive Camera Feature, Discovers Developer
Think Tap Work, developers of iOS app Participant for Zoom, revealed in a recent tweet that they’d discovered something peculiar about Apple’s app developer ecosystem:
There are some OS features that third-party apps simply can’t access unless Apple itself grants their devs permission, and there’s no publicly accessible way for devs to request permission to these features on their own.
iPad app devs, want to enable the camera while in Split View? Hopefully you have some connections with developer relations. Found the private entitlement granted to Zoom. Now to see if Apple grants it to us. All the details here: https://t.co/Kl638l6DOH
— Think Tap Work (@thinktapwork) April 27, 2021
In order to grant apps access to certain OS features on Apple devices, app developers have to use what Apple calls “entitlements”. Most entitlements, like access to push notifications and iCloud, are public. However, there are a number of private entitlements that aren’t readily available to devs.
Access to CarPlay, and iPad Camera Multitasking (the ability to keep the iPad’s camera engaged while multitasking in Split View) are two examples of private entitlements.
There’s a publicly available (and strictly policed) application process for devs to request access to CarPlay, but no such process (or even documentation) exists for iPad Camera Multitasking.
Despite that, the folks at Think Tap Work noticed that popular videoconferencing app Zoom has had iPad Camera Multitasking capabilities for months now. When they tried to find out how to get the feature working on their own Zoom client for iOS, they had no luck.
When they contacted Zoom, they were told that the private entitlement for iPad Camera Multitasking had been granted to their app by Apple itself, through a private process that most devs didn’t even know existed until now.
Can Apple really say that if it’s picking and choosing which developers get access to which features, especially when we take a look at this particular case?