Twitter for Mac 在 Cocoa 应用程序中集成

发布于 2024-12-17 09:42:44 字数 857 浏览 5 评论 0原文

我看到 XCode 和 Skype 都允许选择文本并通过 Twitter for Mac 应用程序发送推文,我想使用 Apple Scripting Bridge 来执行此操作,但在生成 Twitter for Mac 头文件后我很不满意:

Gemini:~ loretoparisi$ sdef /Applications/Twitter.app | sdp -fh --basename Twitter

在这里你可以找到使用 Cocoa Scripting Bridge 和 Objective-C 类来处理 Mac 版 Twitter 所需的一切:

@class TwitterWindow, TwitterApplication, TwitterUsernameAutocomplete, TwitterAccount, TwitterUser, TwitterStatus, TwitterLink, TwitterLocation, TwitterStream;

然后

TwitterApplication *twitter = [SBApplication applicationWithBundleIdentifier:@"com.twitter.twitter-mac"];
TwitterStatus *status = [[TwitterStatus alloc] init];
[status setDate:[NSDate date]];
[status setUrl:shareUrl];
[status setText:shareText];

问题是,直到现在我还没有找到任何在 TwitterApplication 对象中发送 TwitterStatus 的方法。

I see that both XCode and Skype permits to select text and send a tweet through Twitter for Mac application, I suppose to do this using the Apple Scripting Bridge, but I was unhappy after I generated the Twitter for Mac header file:

Gemini:~ loretoparisi$ sdef /Applications/Twitter.app | sdp -fh --basename Twitter

Here you can find all you need to handle Twitter for Mac using the Cocoa Scripting Bridge, with the Objective-C classes:

@class TwitterWindow, TwitterApplication, TwitterUsernameAutocomplete, TwitterAccount, TwitterUser, TwitterStatus, TwitterLink, TwitterLocation, TwitterStream;

and then

TwitterApplication *twitter = [SBApplication applicationWithBundleIdentifier:@"com.twitter.twitter-mac"];
TwitterStatus *status = [[TwitterStatus alloc] init];
[status setDate:[NSDate date]];
[status setUrl:shareUrl];
[status setText:shareText];

The problem is that I didn't found any way to send a TwitterStatus within a TwitterApplication object until now.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

油焖大侠 2024-12-24 09:42:44

我相信 Xcode 和其他人正在使用 Twitter 提供的系统服务。为什么要费心去编写脚本桥呢?

NSString *text = @"Hello World!";
[[NSPasteboard generalPasteboard] clearContents];
[[NSPasteboard generalPasteboard] setString:text forType:NSStringPboardType];
NSPerformService(@"Tweet", [NSPasteboard generalPasteboard]);

I believe Xcode and others are using the Twitter-provided System Service. Why bother with scripting bridge?

NSString *text = @"Hello World!";
[[NSPasteboard generalPasteboard] clearContents];
[[NSPasteboard generalPasteboard] setString:text forType:NSStringPboardType];
NSPerformService(@"Tweet", [NSPasteboard generalPasteboard]);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文