iOS开发-获取已安装app的bundle id
2016-07-11 本文已影响3257人
中峰
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:
![](https://img.haomeiwen.com/i1003474/5a259138c312d16c.png)
注意:
- 苹果公开的api不允许获取已安装app的列表,除非是一些私有的api。但使用私有api,在发布时不能通过App Store审核。
- 该方法适用于越狱后的设备。
- 该方法只能获取app的bundle id,不能获取app中文名和icon。