现在的app一般都会有第三方登录,类似QQ/微博/微信等; 但是我们不能全部暴露出来,假设如果用户手机没有QQ,那点击QQ登录只会跳到苹果商店去下载,一来用户体验不好,二来苹果审核不通过. 所以这里要做一个操作,先判断手机本地是否有安装某款app,如果有,则把图标显示,如果没有,则消失.
- (void)isHasAPPWithURLScheme:(NSString *)schemeStr { //判断本地是否有淘宝App NSURL *url = [NSURL URLWithString:schemeStr]; if ([[UIApplication sharedApplication] canOpenURL:url]) { NSLog(@"canOpenURL"); [[UIApplication sharedApplication] openURL:url]; } else{ NSLog(@"应用图标不显示"); }}
注意:iOS9需要设置白名单,大伙儿还要在plist设置。
常用 scheme:
QQ的url是 mqq:// 微信是weixin:// 淘宝taobao:// 微博 sinaweibo:// 支付宝alipay:// 详细链接看这个:https://www.zhihu.com/question/19907735