zoukankan      html  css  js  c++  java
  • 利用私有的库MobileCoreServices检测正在安装的应用

      利用的私有库检测正在安装的app

    分为两步:第一,通过placeholderApplications获得所有的正在安装的app的信息

                  第二,遍历正在安装的app的信息,根据名称获得你想检测的app是否正在安装

    一旦使用了私有的接口你的app便不能再上架了

    利用私有的库MobileCoreServices检测正在安装的应用

        NSMutableArray *app = [NSMutableArray array];
        //获得私有的类
        Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace");
        NSObject *workspace = [LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)];
        //获得所有的正在安装的app,得到的是个数组
        NSArray *apps = [workspace performSelector:@selector(placeholderApplications)];
        Class LSApplicationProxy_class = objc_getClass("LSApplicationProxy");
        //遍历数组,根据app的名称判断哪个app正在安装
        for (int i = 0; i < apps.count; i++) {
            NSObject *temp = apps[i];
            if ([temp isKindOfClass:LSApplicationProxy_class]) {
                NSString *appName = [temp performSelector:NSSelectorFromString(@"localizedName")];
                BOOL b  = [temp performSelector:NSSelectorFromString(@"isPlaceholder")];
                NSLog(@"名称:%@++++%d",appName,b);
            }
        }
  • 相关阅读:
    linux网卡混杂模式打开
    Python解释器运行成功,命令运行显示无此属性解决办法
    Python-01基础-09Python相关术语
    Python-01基础-05模块
    Python-01基础-04类
    Python-01基础-03函数
    Python-01基础-02数据类型
    Python-01基础-01Python简介
    Python-01基础-00菜鸟教程
    Module-Dask并行任务调度
  • 原文地址:https://www.cnblogs.com/liyy2015/p/6179623.html
Copyright © 2011-2022 走看看