4

在山狮上,我尝试使用 AppKit.framework 的 NSSharingService 类提供新的共享可能性

这种代码一切正常

NSArray* array = @[ @"myText", [NSImage imageNamed:@"myImageFile"] ];

NSSharingService* sharingServiceFB = [NSSharingService sharingServiceNamed:NSSharingServiceNamePostOnFacebook];

[sharingServiceFB performWithItems:array];

但是我想在没有 performWithItems 函数生成的共享窗口的情况下做同样的事情。因为我正在考虑我的应用程序的用户不想确认他想要发送消息,因为他已经选择了那个。我在此类中看不到任何“直接发布”功能。是否需要以其他方式完成?

4

1 回答 1

2

除了自己实现 Facebook 的 API 之外没有其他办法,但如果你不介意窗口出现半秒:

- (void)whatever {
    NSArray* array = @[ @"myText", [NSImage imageNamed:@"myImageFile"] ];

    NSSharingService* sharingServiceFB = [NSSharingService sharingServiceNamed:NSSharingServiceNamePostOnFacebook];

    [sharingServiceFB performWithItems:array];

    [self performSelector:@selector(pressReturn) withObject:nil afterDelay:0.5];
}

- (void)pressReturn {
    CGEventRef keypress = CGEventCreateKeyboardEvent(NULL, 36, TRUE);
    CGEventPost(kCGHIDEventTap, keypress);
}

您的用户可能不喜欢它...

于 2013-04-13T01:52:30.943 回答