【问题标题】:Twitter Framework for iOS - Why does TWrequest.h import <Social/SLRequest.h>?iOS 版 Twitter 框架 - 为什么 TWrequest.h 导入 <Social/SLRequest.h>?
【发布时间】:2012-12-03 23:40:59
【问题描述】:

在 Twitter 框架内部的 TWRequest.h 内部,它在那里导入了这个

#import <Social/SLRequest.h>

但是 TWRequest 是为 iOS 5 构建的,那么为什么它会导入 Social Framework 的文件,因为它们是为 iOS 6 构建的呢?

我收到此错误..

'Social/SLRequest.h' file not found

当然没找到是因为我想用推特框架,所以没有在Social Framework中添加。我不能简单地删除它,因为该文件是从社交框架引用的,我该如何解决这个问题?谢谢

【问题讨论】:

  • 您要构建的部署目标是什么?

标签: ios5 twitter social social-framework


【解决方案1】:

在 iOS 6 中,Twitter 框架方法已被弃用。相反,您应该使用 Social.framework。其中包括分享 Twitter 和 Facebook。

示例代码检查正在运行的操作系统版本以及可用的框架类是 iOS 5 - Twitter.framework 还是 6 - Social.framework

#import <Twitter/Twitter.h>
#import <Social/Social.h>


- (void) postTweet {
NSString *someTweet = @"someTweet";

// running on iOS5
if (NSClassFromString(@"TWTweetComposeViewController") && [TWTweetComposeViewController canSendTweet]) {

    TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init];

    [tweetSheet setInitialText:someTweet];
    [self presentModalViewController:tweetSheet animated:YES];

    // running on iOS6
} else if ( NSClassFromString(@"SLComposeViewController") && [SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter] ) {

    SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];

    [tweetSheet setInitialText:someTweet];
    [self presentViewController:tweetSheet animated:YES completion:NULL];
}
}

【讨论】:

    【解决方案2】:

    这似乎更像是一个 xcode 问题。有时它有效,有时它抛出错误。我不得不退出 xcode 并重新启动它才能再次工作。它最终自行修复。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-10
      • 2019-05-27
      • 2013-01-05
      • 2014-06-18
      • 2011-11-16
      • 2019-09-24
      • 1970-01-01
      • 2021-09-23
      相关资源
      最近更新 更多