是否有可能在iOS 11中以编程方式获取正在运行/已安装的应用程序列表?

不,不是自iOS 9以来。

苹果的挑衅问题一直延伸到一个应用程序查询设备上的其他应用程序,但从iOS 9苹果已经取消了这样做的能力,除非明确声明。

在过去,开发人员可以使用在UIApplication定义的方法- canOpenURL:并传入已知由另一个应用程序处理的URL,以查看用户是否在其手机上拥有该应用程序。 虽然这对于在用户手机上获取应用程序的完整列表是不可行的,但它可以用于了解特定应用程序是否存在。

iOS 9引入了白名单URL方案的概念,这意味着如果您要查询它,则必须在.plist中明确说明它。

有关其工作原理的指南,我推荐这篇文章:http://www.dysonapps.com/blog/20 …

简短的回答是否定的,您无法获得设备上其他应用的列表。

答案来源 – 是否可以在带有图标的tableview中列出iPhone设备中安装的所有应用程序?