2012-03-02 86 views
3

我想要使用Cocos2D将Twitter和Facebook整合到游戏中。我只是想要简单的东西,比如发短信“我得到了xxx”,在Facebook页面上发布了类似的消息等等。我见过许多图书馆让我的生活更轻松 - ShareKit,AddThis等 - 但我也读过人们的东西说他们不那么容易,没有支持,等等。Twitter和Facebook的整合在cocos2d

我可以去获取facebook和twitter SDKs并整合它们,但我想知道是否有人对我错过的东西有任何建议。我需要支持iOS4和5,所以我想图书馆应该使用iOS5中内置的twitter功能。

对此的任何建议或评论 - 也许我错过了一些真正明显的东西?

回答

1

1)对于Facebook,Ofcourse可以使用facebook SDK并将其配置为https://github.com/facebook/facebook-ios-sdk。但是,您可能会遇到很多问题。更好地阅读Facebook网站提供的文档并做到这一点。随意在这方面提出任何疑问。

2)对于Twitter,您可以使用内置于ios5中的twitter框架。它很容易。尝试在那里使用推特表。它将为ios5的用户提供良好的体验和一致性。 但您还必须整合MGTwitterEngine(https://github.com/mattgemmell/MGTwitterEngine)以支持ios4及其以前的版本。它有点困难。

希望你明白了。

+0

这是我d已经发现了 - 我想知道有一个图书馆可以将所有这一切做到一起。我一直在寻找ShareKit(ShareKit 2.0),这似乎整合推特和脸书,并可以处理iOS5的推特整合。有没有这方面的经验? – 2012-03-05 12:55:18

+0

雅洛特的经验。但我不会鼓励你使用它。因为它已经过时了。如果您将该API集成到您的应用中,则会显示31条警告。如果你释放你的应用程序,那么你的“共享”编码可能不会在第一天起作用。无论如何,如果你想,继续。 – 2012-03-05 13:52:06

+0

ShareKit 2.0(不getShareKit.com)过时了吗?我不介意写我自己的(就像你建议的那样),但如果有一个图书馆已经在那里证明了,它会为我节省时间!谢谢。 – 2012-03-05 14:23:38

4

只需插入以下代码行,即可在Facebook上分享。 对于Twitter,我认为不存在这样一种简单的方法。

NSString *urlString = @"any url"; 
NSString *title = @"My score is 999"; 
NSString *shareUrlString = [NSString stringWithFormat:@"http://www.facebook.com/sharer.php?u=%@&t=%@", urlString , title]; 
shareUrlString = [shareUrlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
NSURL *url = [[NSURL alloc] initWithString:shareUrlString]; 
[[UIApplication sharedApplication] openURL:url]; 
[url release]; 
+0

哇,狂热。这是我正在寻找的。你知道任何其他可以发布到flickr或twitter的魔法命令吗?谢谢。 – SpaceDog 2012-07-28 17:59:30

+0

这不再起作用。 Facebook拒绝在用户墙上发布消息。 – ganesh 2013-09-15 14:59:04

+0

它不适用于cocos2d – 2014-02-25 13:25:38

4

你可以在Twitter上分享使用下面的代码

twt = [[TWTweetComposeViewController alloc] init]; 
    [twt setInitialText:@"Scorred 1000"]; 
    [twt addURL:[NSURL URLWithString:@"url"]]; 
    twt.completionHandler = ^(TWTweetComposeViewControllerResult result) { 
     switch (result) { 
      case TWTweetComposeViewControllerResultCancelled: 
       [twt dismissModalViewControllerAnimated:TRUE]; 

        break; 

      case TWTweetComposeViewControllerResultDone: 

       //[self.navigationController popViewControllerAnimated:NO]; 
       [self.navigationController popViewControllerAnimated:TRUE];      
       break; 
      default: 
       break; 
     } 
     [twt dismissModalViewControllerAnimated:TRUE]; 
};