iOS SA_OAuthTwitterEngine正在进行身份验证,但没有发布,也没有代理回调
我的iOS应用程序中有iOS SA_OAuthTwitterEngine正在进行身份验证,但没有发布,也没有代理回调,ios,twitter,oauth,Ios,Twitter,Oauth,我的iOS应用程序中有sau OAuthTwitterEngine似乎工作正常,但几个月前,它停止工作(编辑:在iOS 4或iOS 5中不工作,并且在出现故障之前应用程序中没有代码更改)。它可以很好地验证和存储creds,并且可以很好地将它们传递给我的数据库服务。当我尝试发布一条推特时,一切都记录良好,就好像它正在经历正确的过程。正确传递所有令牌和用户名等。然而,我在Twitter上没有看到任何帖子。我在帖子中使用了一个日期戳,并在两个不同的用户帐户上尝试了这一点,但没有看到任何一个帐户的帖子。
sau OAuthTwitterEngine
似乎工作正常,但几个月前,它停止工作(编辑:在iOS 4或iOS 5中不工作,并且在出现故障之前应用程序中没有代码更改)。它可以很好地验证和存储creds,并且可以很好地将它们传递给我的数据库服务。当我尝试发布一条推特时,一切都记录良好,就好像它正在经历正确的过程。正确传递所有令牌和用户名等。然而,我在Twitter上没有看到任何帖子。我在帖子中使用了一个日期戳,并在两个不同的用户帐户上尝试了这一点,但没有看到任何一个帐户的帖子。有趣的是,mgTwitterEngineedElegate
回调(RequestSuccessed:
和requestFailed:
)没有被调用。我在MGTwitterEngine的连接:didReceiveResponse:
,连接:didReceiveData:
,和连接:didFailWithError:
中设置断点,以查看这是否只是一个委托分配问题,但这些断点从未到达,因此该应用程序似乎没有收到Twitter的响应,尽管我每次都可以记录从引擎的sendUpdate:方法返回的连接标识符。如果我可以让代理接收连接的响应,也许我会看到一个错误。这就是我一整天都在做的事。任何帮助都将不胜感激
代码如下:
- (void)postTweetToTwitter
{
if (![[NSUserDefaults standardUserDefaults] objectForKey:TWITTER_USER]) {
[[NSNotificationCenter defaultCenter] postNotificationName:@"ShowSettings" object:nil];
return; //Makes sure user data is stored in NSUserDefaults before continuing, if not, settings will prompt for authentication
}
NSString *formattedDateString = [NSDateFormatter localizedStringFromDate:[NSDate date] dateStyle:kCFDateFormatterShortStyle timeStyle:kCFDateFormatterNoStyle];
NSString *tweetMessage = [NSString stringWithFormat:@"%@: Tweet message goes here.", formattedDateString];
if(!_engine){
_engine = [[SA_OAuthTwitterEngine alloc] initOAuthWithDelegate:self];
_engine.consumerKey = kOAuthConsumerKey;
_engine.consumerSecret = kOAuthConsumerSecret;
}
UIViewController *controller = [SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine: _engine delegate: self];
if (controller)
[self presentModalViewController: controller animated: YES];
else {
NSString *twitterConnectionIdentifier = [_engine sendUpdate:[NSString stringWithString:tweetMessage]];
NSLog(@"Twitter Connection Identifier : %@", twitterConnectionIdentifier);
}
}
- (NSString *) cachedTwitterOAuthDataForUsername: (NSString *) username {
NSString *authData = [[NSUserDefaults standardUserDefaults] objectForKey:TWITTER_USER];
if (authData) {
return authData;
} else return [NSString stringWithString:@"No Twitter Data"];
//This just won't do anything, but we avoid this case in the first if statement above.
}
我也有同样类型的问题,然后发现我的twitter帐户被阻止/禁止发布。也许你也有同样的问题