• 利用私有的库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);
            }
        }
  • 相关阅读:
    sqlserver用户授予权限
    数据库内创建用户失败
    连接服务器出错
    ajax基础请求
    --------基础部分总结---------
    冒泡排序(面试题)
    二维数组
    利用for循环使用数组
    数组的内存分析与三种初始化类型
    数组 声明和创建 数组内的所有元素相加
  • 原文地址:https://www.cnblogs.com/liyy2015/p/6179623.html
Copyright © 2020-2023  润新知