如何获取后台运行应用程序的名称

2023-11-24

我正在制作一个应用程序,我需要在其中显示在后台运行的应用程序的名称。我对其进行了研发,发现我们只能了解苹果的应用程序,如照片、相机等。但我不知道如何了解。如果您知道如何获取,请帮助我只是后台运行的应用程序的名称对于后台运行的进程,我使用了以下方法

- (NSArray *)runningProcesses {

    int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL, 0};
    size_t miblen = 4;

    size_t size;
    int st = sysctl(mib, miblen, NULL, &size, NULL, 0);

    struct kinfo_proc * process = NULL;
    struct kinfo_proc * newprocess = NULL;

    do {

        size += size / 10;
        newprocess = realloc(process, size);

        if (!newprocess){

            if (process){
                free(process);
            }   
            return nil;
        }

        process = newprocess;
        st = sysctl(mib, miblen, process, &size, NULL, 0);

    } while (st == -1 && errno == ENOMEM);

    if (st == 0){

        if (size % sizeof(struct kinfo_proc) == 0){
            int nprocess = size / sizeof(struct kinfo_proc);

            if (nprocess){

                NSMutableArray * array = [[NSMutableArray alloc] init];

                for (int i = nprocess - 1; i >= 0; i--){

                    NSString * processID = [[NSString alloc] initWithFormat:@"%d", process[i].kp_proc.p_pid];
                    NSString * processName = [[NSString alloc] initWithFormat:@"%s", process[i].kp_proc.p_comm];

                    NSDictionary * dict = [[NSDictionary alloc] initWithObjects:[NSArray arrayWithObjects:processID, processName, nil] 
                                                                        forKeys:[NSArray arrayWithObjects:@"ProcessID", @"ProcessName", nil]];
                    [processID release];
                    [processName release];
                    [array addObject:dict];
                    [dict release];
                }

                free(process);
                return [array autorelease];
            }
        }
    }

    return nil;
}

如果您认为这是不可能的,请看看这个应用程序http://itunes.apple.com/us/app/sys-activity-manager-for-memory/id447374159?mt=8。我也有一个解决方案,但它不是一个正确的方法(我在这个问题下面的最后一条评论中提到过)。

Thanks.


我认为在ios中不可能获取哪些应用程序在后台运行,因为在ios中,哪个应用程序是前台的,这个是活动运行的应用程序,而其他应用程序是后台应用程序。

因此,除了您的应用程序名称之外,其他都是后台应用程序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取后台运行应用程序的名称 的相关文章

随机推荐

  • 如何制作可重用的 HTML 导航菜单?

    我相信这个话题一直都会出现但我似乎无法给出一个简洁的答案 我有一个垂直菜单栏 我想在网页 gt 20 中重复使用它 这Menu Bar以 HTML 编码并使用 UL LI A div 标签和 CSS 我们需要这个 Reusable 可维护
  • Mysql 匹配...与“%term%”之类的简单匹配

    有什么问题 term POST search function buildQuery exploded count query if count exploded gt count query AND column LIKE explode
  • javax.tools 依赖于 JDK 吗?

    我想用JavaCompiler动态创建一些类 我找到了源代码javax tools封装了 但是没有实现 互联网上的一些帖子说这取决于tools jar 我不知道tools jar与 JRE 合作 那么 在没有安装JDK的情况下 可以在JRE
  • mycout 自动结束

    我想要实施类MyCout 它可以提供自动endl的可能性 即这段代码 MyCout mycout mycout lt lt 1 lt lt 2 lt lt 3 outputs 123 empty line here 是否可以实现具有此类功能
  • IOS:将图像添加到自定义 MKAnnotationview

    我想将自定义图像添加到地图中的注释中 我制作了以下自定义 MkAnnotationView import
  • 验证 do-while 循环中的输入类型

    基本上 我需要确保输入是integer 像这样 do printf Enter gt scanf d integer while user entered a char instead of an int 我尝试了各种方法 但当我尝试输入时
  • 是什么让这个头文件使 VS2005 慢得像爬行一样? (智能感知无罪?)

    我正在尝试使用 C 项目我在这里找到的编译时哈希技术 宏按预期工作 编译时间也合理 但 64 个递归宏似乎与 Visual Studio 的 Intellisense 玩得很不愉快 每次简短编辑后 IDE 都会挂起约 30 秒 我怀疑它正在
  • Android Chrome 浏览器中的通知 API

    我的网络应用程序使用通知API 我认为 KitKat 的 Chrome 浏览器应该有它 或者至少是旧的webkitNotifications 但两者window Notification and window webkitNotificat
  • 如何在 WinForms 中显示显示轨迹栏值的工具提示

    我是 C 和 WinForms 的新手 所以请原谅 这是一个新手问题 我正在尝试向 TrackBar 控件添加一个工具提示 该提示在您拖动该栏时显示该栏的当前值 我已经实例化了一个 ToolTip 对象并尝试了以下处理程序代码 但它没有显示
  • Spring 数据 JPA。子实体的分页

    我将 Spring Data JPA 与 Spring boot 版本 1 3 6 RELEASE 和内存数据库一起使用 我想知道如何对子实体进行分页来自父实体 将获取设置为LAZY对我来说不是一个解决方案 这是用例 Parent has
  • 格式化字符串未使用的命名参数[重复]

    这个问题在这里已经有答案了 假设我有 action bond james bond format bond bond james james 这将输出 bond james bond 接下来我们有 action bond james bon
  • UDP 数据包大小和数据包丢失

    我一直在编写一个程序 该程序在 UDP 之上使用停止和等待协议来通过 LAN 和 WAN 发送数据包 我最近测试了我的程序 发现数据包越大 接近 64k 字节 丢包率越高 直观上这是有道理的 但实际原因是什么 UDP 数据包大于MTU si
  • GraphQL Blackbox /“任何”类型?

    是否可以指定 GraphQL 中的字段应该是黑盒 类似于 Flow 具有 任意 类型 我的模式中有一个字段应该能够接受任何任意值 可以是字符串 布尔值 对象 数组等 我想出了一个中间立场的解决方案 我没有尝试将这种复杂性推到 GraphQL
  • 从图库中选择图像不适用于 Redmi Note 4

    我在 S O 上看到了几个与此相关的其他问题 但与我的问题最接近的一个似乎没有得到很多回复 小米设备无法从图库中选取图像 希望这个问题能有更好的运气 我正在尝试从手机图库中选择图像 并将图像路径传递到另一个活动 以便用户预览该图像 我已经在
  • 使用 PySpark 时如何将 jdbc 驱动程序添加到类路径?

    如何 在哪里安装 Spark sql 的 jdbc 驱动程序 我正在运行全火花笔记本docker 镜像 并尝试将一些数据直接从 sql 数据库提取到 Spark 中 据我所知 我可以告诉我需要将驱动程序包含在我的Classpath 我只是不
  • 谷歌浏览器和铬中不支持不连续选择错误

    我正在开发一个书签应用程序 我必须在其中存储用户选择的关键字 单词或内容 我使用 createRange 和 addRange javascript 方法来创建范围 然后找出用户选择的元素 内容 我为此编写的代码如下
  • 依赖地狱——如何将依赖传递给深度嵌套的对象?

    这是为这篇文章编写的一个通用的虚构示例 考虑6个班级 TableFactory TableData TableCRUD TableSchema DBConnect Logger TableFactory是外部类 假设它拥有一个TableDa
  • 在 Visual Studio 中自定义 C# 标准文档生成器(XML 注释)

    是否有任何其他类型的 C 文档生成器快捷方式 例如 生成function 代码 或 VS IDE 中的任何工具项 例如电子邮件 Outlook 中的签名 用于遵循 MS 标准编码和文档并让从事同一项目的其他合作开发人员理解 如何将 Visu
  • window.toString.call 在 IE8 中未定义

    当你跑步时 window toString call 在 FF CH 中一切正常 但在 IE8 中出现脚本错误 进一步调查发现 window toString callIE8 中未定义 您还可以运行这个 window toString in
  • 如何获取后台运行应用程序的名称

    我正在制作一个应用程序 我需要在其中显示在后台运行的应用程序的名称 我对其进行了研发 发现我们只能了解苹果的应用程序 如照片 相机等 但我不知道如何了解 如果您知道如何获取 请帮助我只是后台运行的应用程序的名称对于后台运行的进程 我使用了以