iOS应用大多都有urlscheme,比如通过广告点击进入的应用都需要来源标识,所以大多数应用都支持这个功能。并且在一些应用支持微信登录的时候,如果手机没有安装微信,根据Apple的要求是要隐藏微信图标的。那么我们就要先知道用户手机有没有安装微信才行。

首先配置url白名单

我们需要将微信添加白名单才可以检测是否安装微信。

进入项目的设置中。

进入项目设置

添加一条配置项目:LSApplicationQueriesSchemes

将我们需要的应用链接添加进来。

例如微信的urlscheme为:weixin://

那么我们的白名单填写weixin

添加白名单

通过urlscheme检测是否安装微信

然后我们需要在代码部分进行判断。

1
2
3
4
5
6
7
///检测应用是否被安装
func isAppInstalled(scheme: String) -> Bool {
if let url = URL(string: scheme) {
return UIApplication.shared.canOpenURL(url)
}
return false
}

使用方法

1
2
3
if isAppInstalled(scheme: "weixin://") {
//do something
}