gpt4 book ai didi

iphone - 如何使用Springboard Services Framework使用SBSLaunchApplicationWithIdentifier

转载 作者:行者123 更新时间:2023-12-01 19:17:26 25 4
gpt4 key购买 nike

我想使用Springboard服务框架来使用以下代码。

SBSLaunchApplicationWithIdentifier(CFSTR("com.apple.preferences"), false);

但是,当我下载头文件并在项目中使用它时,它将无法构建。请让我知道如何进行这项工作。

最佳答案

您打算将该方法用于什么目的?我的印象是从守护程序启动应用程序?

还有其他方法可以很容易地启动应用程序。我发现最可靠的方法是使用显示堆栈正确启动应用程序。当您关闭应用程序并尝试重新启动它时,其他启动应用程序的方法往往会导致问题,并使其崩溃。

使用theos,您可以执行以下操作:

NSMutableArray *displayStacks = nil;

// Display stack names
#define SBWPreActivateDisplayStack [displayStacks objectAtIndex:0]
#define SBWActiveDisplayStack [displayStacks objectAtIndex:1]
#define SBWSuspendingDisplayStack [displayStacks objectAtIndex:2]
#define SBWSuspendedEventOnlyDisplayStack [displayStacks objectAtIndex:3]

// Hook SBDisplayStack to get access to the stacks

%hook SBDisplayStack

-(id)init
{
%log;
if ((self = %orig))
{
NSLog(@"FBAuth: addDisplayStack");
[displayStacks addObject:self];
}
return self;
}

-(void)dealloc
{
[displayStacks removeObject:self];
%orig;
}

%end

然后启动应用程序,执行以下操作:
id PreferencesApp = [[objc_getClass("SBApplicationController") sharedInstance] applicationWithDisplayIdentifier:@"com.apple.preferences"];

[SBWActiveDisplayStack pushDisplay:PreferencesApp];

但是,如果您确实要使用该方法,则需要指定哪些错误阻止了它的构建,并检查用于构建该文件的头文件。您还需要链接到SBS框架。

关于iphone - 如何使用Springboard Services Framework使用SBSLaunchApplicationWithIdentifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12247052/

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