大家好,关于深入解析:iOS 13环境下如何检测应用是否已安装很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
代码如下
类LSApplicationWorkspace_class=objc_getClass("LSApplicationWorkspace");
NSObject* 工作空间=[LSApplicationWorkspace_class PerformSelector:@selector(defaultWorkspace)];
NSArray*allApplications=[工作空间performSelector:@selector(allApplications)];
for(NSString*appStrinallApplications)
{
NSString*app=[NSStringstringWithFormat:@"%@",appStr];
NSRangerange=[app rangeOfString:@"您要查询该App的bundle ID"];
if(范围.长度1)
{NSLog(@"已安装");
}
}
iOS11使用私有类MCMAppContainer来判断bundleID是否安装。
代码如下:
NSBundle*container=[NSBundlebundleWithPath:@"/System/Library/PrivateFrameworks/MobileContainerManager.framework"];
if([集装箱装载量])
{类appContainer=NSClassFromString(@"MCMAppContainer");
Bool test=[appContainer PerformSelector:@selector(containerWithIdentifier:error:) withObject:bundleId withObject:nil];
如果(测试)
{返回是;}
否则{返回NO;}
}
到了iOS12,以上方法也因权限问题被禁止。还有其他方法可以判断吗? iOS12只能通过特殊方法安装。目前各大厂商90%的应用和游戏都可以成功检测。某些应用程序仍然无法检测到。代码如下:
id 空间=[NSClassFromString(@"LSApplicationWorkspace") PerformSelector:@selector(defaultWorkspace)];
NSArray *plugins=[空格PerformSelector:@selector(installedPlugins)];
NSMutableSet *list=[[NSMutableSet alloc] init];
for (插件中的id 插件) {
id捆绑=[插件performSelector:@selector(containBundle)];
如果(捆绑)
[列表addObject:bundle];
}
for (列表中的id 插件) {
NSLog(@"%@", [插件PerformSelector:@selector(applicationIdentifier)]);
好了,文章到此结束,希望可以帮助到大家。
【深入解析:iOS 13环境下如何检测应用是否已安装】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
终于可以不用担心用户没下载特定app了!
有13位网友表示赞同!
这个功能对我来说真是太棒了,我一直在想办法实现这一点呢。
有15位网友表示赞同!
以前只能用一些笨拙的方法来判断应用程序的安装状态,现在有了更方便的方式了吗?
有16位网友表示赞同!
希望开发者能够充分利用这个功能,开发更多有趣的应用。
有16位网友表示赞同!
iOS13 的更新真是越来越强大!
有11位网友表示赞同!
这会不会影响用户隐私呢?我很想知道具体实现方法。
有11位网友表示赞同!
这样我们可以更精准地推送相关内容给用户了!
有17位网友表示赞同!
学习一下 iOS 编程,看能不能利用这个特性开发自己的 app!
有11位网友表示赞同!
对于依赖特定app的用户来说,这个功能简直是一大福音!
有20位网友表示赞同!
这下不用担心用户未安装某个必须的app了! ,开发起来会轻松很多.
有7位网友表示赞同!
以前写程序时常常遇到的问题,终于解决啦!
有12位网友表示赞同!
想知道使用这个功能的详细代码示例,可以参考一下官方文档?
有7位网友表示赞同!
这个功能会不会占用手机资源太多呢?
有17位网友表示赞同!
苹果越来越注重用户体验了!
有5位网友表示赞同!
希望能看到更多应用开发者利用这个功能做出创新!
有9位网友表示赞同!
对于第三方应用商店来说,这个功能也不太友好吧?
有12位网友表示赞同!
希望 iOS13 带来的其他更新也能如此好用!
有19位网友表示赞同!
期待iOS 进一步的发展,为我们带来更流畅的使用体验!
有13位网友表示赞同!