I know due to privacy concerns, Apple does not allow to get the list of installed apps in an iOS. But is there any third-party library/package that allows to do that?
The app I'm trying to build requires list of apps and selecting a single app to launch.
FamilyActivitySelection does the job but have a lot of limitations.
Answers
As of my last update in January 2022, there is no official way to directly access the list of installed apps on an iOS device due to Apple's strict privacy policies and sandboxing restrictions. This restriction applies to both first-party and third-party developers.
While there may be third-party libraries or packages claiming to provide this functionality, it's important to note that using such libraries can be risky and may violate Apple's App Store guidelines. Apps found to be accessing private user data without permission risk being rejected from the App Store or even being removed if already published.
Instead of trying to access the list of installed apps, you may want to consider alternative approaches to achieve your app's functionality. For example:
-
Custom URL Schemes: Many apps support custom URL schemes that allow other apps to launch them directly. You could provide a list of known apps that support custom URL schemes and allow users to select and launch them.
-
App Extensions: If the functionality you need to access is provided by specific apps, you could explore using app extensions such as Share extensions, Action extensions, or Today widgets. These extensions allow apps to interact with each other in a controlled manner.
-
User Input: Alternatively, you could prompt users to manually select the app they want to launch from a list provided by your app. While this may not be as automated as programmatically accessing the list of installed apps, it respects user privacy and is compliant with App Store guidelines.
Before implementing any solution, make sure to thoroughly review Apple's App Store Review Guidelines and ensure that your app complies with their policies regarding user privacy and data access. If you have specific questions or concerns, consider reaching out to Apple Developer Support for clarification.