Available platform APIs
Available platform APIs
What APIs do you use in your React Native apps?
Access to platform APIs is the key reason why we build mobile apps: an app that doesn’t make use of any native APIs might as well be a website, and mobile apps can be so much more interesting! Compared to last year, the Camera API remains in the top spot - a key feature for many mobile apps, and one of the first “wow I can’t do this with a website” APIs to try. Deep linking remains an important part of the app experience. Not only is it convenient to link users to a specific page in the app, it is known that conversion rates on e-commerce apps are higher than websites. So driving more users into the app experience (e.g. with universal and app links) makes both financial and practical sense! 10% of the respondents said they had a negative experience with deep linking, but hopefully with newer guides and improved built-in integrations with Expo Router, we'll see more users implement linking with ease. WebViews have experienced a slight dip in popularity since last year, but we're likely using more of them in the coming year with the introduction of DOM components, which allow you to render mini-web views for specific web code. Ones to watch for Expo developers are definitely maps, video and audio, with the corresponding Expo SDK libraries all of getting a refresh this year: I hope to see them moving up in this list for 2025 for both usage and developer experience!

Kadi Kraman
Software Developer at Expo
Platform APIs pain points
Platform APIs pain points
Platform APIs pain points
Freeform
What pain points have you encountered related to the APIs mentioned above? Specify the individual API if applicable.
Push notifications are the second most-used platform API. Expo addresses this need through the expo-notifications library and Expo Push Service. However, push notifications present significant challenges - they are not trivial to set up, have an extremely large surface area, notable cross-platform differences, and quirks such as behavior dependent on the application state (this also ties into the space of Background Processing). I believe it's for that reason that both Push Notifications and Background Processing received higher percentage of respondents with negative experience. The Expo libraries in this space continue to see incremental improvements, from enhanced documentation to better support for background tasks (in notifications or geolocation) - these have already happened and more are coming, so stay tuned!

Vojtech Novak
React (Native) dev & OSS maintainer