在我的应用程序中,我显示了应用程序列表。是否可以在iPhone中找到已安装或未安装的应用程序数组。 如果有任何可能性,请在swift中提供相关代码,以检查iPhone中是否安装了应用程序数组。
答案 0 :(得分:1)
在过去,您可以将canOpenURL
与iHasApp这样的库一起使用。这仅适用于注册自定义深层链接方案的应用程序,但它捕获了大多数重要的应用程序。
但是自iOS 9以来,这种方法似乎有限 - 请参阅How to reset `canOpenURL` limit in iOS9?
一般情况下,出于隐私原因,您的应用不允许知道系统中还安装了哪些内容。
答案 1 :(得分:0)
来自您的沙盒应用
默认情况下,Application Layer
不允许您使用私有API来检查设备上安装的其他应用程序。
变通方法
如果目标第三方应用支持网址方案。您可以使用[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"someScheme://randomText"]]
检查他们实施的网址方案。
(不推荐)看看像/System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices LSApplicationWorkspace
这样的私有框架。 allInstalledApplications
中有一个名为LSApplicationWorkspace
的方法可以使用,检查运行时标题以获取更多信息。
关闭主题〜适用于MDM设备
使用移动设备管理(MDM)协议,您可以使用InstalledApplicationList命令获取目标设备上已安装应用程序的数组。以下是对所述MDM命令的响应。