我正在通过MGTwitterEngine向Twitter帐户发布一些信息。该字符串最终超过140个字符,需要分成多个推文。但是,似乎post请求以异步方式执行此操作。这意味着如果我调用以下内容:
SA_OAuthTwitterEngineengine = [[SA_OAuthTwitterEngine alloc] initOAuthWithDelegate: loginDelegate];
engine.consumerKey = kOAuthConsumerKey;
engine.consumerSecret = kOAuthConsumerSecret;
[engine sendUpdate:@"Message1"];
[engine sendUpdate:@"Message2"];
[engine sendUpdate:@"Message3"];
不按正确顺序发布。我可以按顺序收到推文:Message2,Message3,Message1。
即使sendUpdate消息请求之间有多分钟的暂停(通过调试器工具和sleep()),MGTwitterEngine仍然拒绝发布任何请求,直到我执行了所有3个sendUpdates请求之后。
有没有人知道如何解决这个问题,强制它发送第一个更新,让它等到收到确认或拒绝推文的响应,然后发出第二个推文请求,等等?
答案 0 :(得分:0)
我找到了解决方案。
我修改了引擎以获得新成员:
NSMutableArray * messages;
一种从数组发送推文的新方法。当我们从服务器收到响应时,我们检查数组以查看是否还有消息,如果是,则从阵列发送另一条消息。重复直到数组为空。