gpt4 book ai didi

ios - 如何在 Logos Tweak 中发布通知

转载 作者:行者123 更新时间:2023-11-29 04:26:25 25 4
gpt4 key购买 nike

我使用 iOSOpenDev 创建了一个 Logo 调整来 Hook CTMessageCenteracknowledgeIncomingMessageWithId:,并且我想通过 NSNotificationCenter 将通知发送到另一个应用程序,但它不起作用。我认为 NSNotificationCenter 可以在不同的应用程序之间工作。我首先尝试在调整中测试 NSNotificationCenter 。这就是我在下面所做的:

%hook CTMessageCenter

-(void)acknowledgeIncomingMessageWithId:(unsigned int)anId {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(doingSMS)
name:@"SMSComing"
object:nil];
[[NSNotificationCenter defaultCenter] postNotificationName:@"SMSComing" object:nil];
}

%orig;
}

- (void)doingSMS{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"短信消息传送成功"
message:@"来短信啦"
delegate:nil
cancelButtonTitle:@"Good"
otherButtonTitles:nil];
[alert show];
[alert release];
}

%end

但是这不起作用。此外,UIAlertView 没有出现。谁能告诉我为什么?

最佳答案

要使通知在应用程序之间工作:

CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), 
NULL,
doingSMS,
CFSTR("com.your.company.SMSComing"),
NULL,
CFNotificationSuspensionBehaviorCoalesce);

然后

CFNotificationCenterPostNotification(CFNotificationCenterGetDarwinNotifyCenter(), 
CFSTR("com.your.company.SMSComing"),
NULL,
NULL,
TRUE);

请注意,像“SMSComing”(没有前缀)这样的通知名称可能会出现问题。

关于ios - 如何在 Logos Tweak 中发布通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12277099/

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