iOS开发-获取已安装app的bundle id

runtime提供了一个方法直接获取已经安装的app的bundle id

直接上代码:

  • 先包含头文件:
    #import <objc/runtime.h>

  • 在相应位置添加如下代码:
    Class LSApplicationWorkspace_class = NSClassFromString(@"LSApplicationWorkspace"); NSObject *workspace = [LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)]; NSArray *arrAPP = [workspace performSelector:@selector(allApplications)]; NSLog(@"arrAPP: %@",arrAPP);

下面是我手机上的已安装的部分app的bundle id:

AE6BD2A9-D1AE-4BBE-8196-22A92C8C7660.png

注意:

  • 苹果公开的api不允许获取已安装app的列表,除非是一些私有的api。但使用私有api,在发布时不能通过App Store审核。
  • 该方法适用于越狱后的设备。
  • 该方法只能获取app的bundle id,不能获取app中文名和icon。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 私有API是指苹果未公开的一些方法,通常情况下这些方法不允许开发者使用,通常情况是指上架AppStore。私有AP...
    起名好难_fz阅读 4,959评论 0 2
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,762评论 0 9
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,881评论 18 139
  • 转载请注明出处:仿猎豹垃圾清理(实现原理+源码)前几天无意打开猎豹内存大师, 发现它的垃圾清理很强大, 效果也不错...
    Visitor阅读 1,062评论 1 4
  • 外媒称,日本正对可能进入钓鱼岛及其附属岛屿附近日本领海的中国渔船采取更严厉的措施。 2012年,日本海上保安厅巡视...
    冷不伶仃来一个阅读 427评论 1 1