gpt4 book ai didi

ios - 如何获取 FrontMost App 是 iOS8

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:59:45 26 4
gpt4 key购买 nike

早些时候我使用 spring board 框架来获取最前面的应用程序,它在 ios7 之前工作正常,但在 iOS8 中。我没有得到最前面的应用程序名称。我正在使用这段代码。

#define SBSERVPATH "/System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices"
#define UIKITPATH "/System/Library/Framework/UIKit.framework/UIKit"
//To get port
mach_port_t *p;
void *uikit = dlopen(UIKITPATH, RTLD_LAZY);
int (*SBSSpringBoardServerPort)() =
dlsym(uikit, "SBSSpringBoardServerPort");
p = (mach_port_t *)SBSSpringBoardServerPort();
dlclose(uikit);

void *sbserv = dlopen(SBSERVPATH, RTLD_LAZY);

void* (*SBFrontmostApplicationDisplayIdentifier)(mach_port_t* port,char * result) =
dlsym(sbserv, "SBFrontmostApplicationDisplayIdentifier");
//Get frontmost application
char frontmostAppS[256];
memset(frontmostAppS,sizeof(frontmostAppS),0);
SBFrontmostApplicationDisplayIdentifier(p,frontmostAppS);
NSString * frontmostApp=[NSString stringWithFormat:@"%s",frontmostAppS];

谁能帮我解决一下。或者任何我有错误的地方,请补充一点。提前致谢。

最佳答案

你可能做不到。根据this post ,通过 SBFrontmostApplicationDisplayIdentifier 获取最前面的应用程序被认为是隐私泄露,并已在 iOS 8 中被阻止。

关于ios - 如何获取 FrontMost App 是 iOS8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25939616/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com