对不起,但我会问一个常规问题:你的 .h 文件中有 MGTwitterEngineDelegate 吗?
我建议投入一些登录requestSucceeded:
和requestFailed:withError:
您是否在该项目中成功地进行了任何其他类型的 Twitter 通信?在同一个班级?
编辑
我设置了一个 DM 请求,它与 arequestSucceeded:
和 a一起正常工作directMessagesReceived:forRequest:
根据您的:
“所以每次我想获取用户的 dm 时,我都必须让用户注销然后重新登录。”
我想知道这是否不是用户令牌存储不正确的问题?我建议看看成功登录是如何存储令牌的?
特别是这个 MGTwitterEngineDelegate 方法。
- (void)accessTokenReceived:(OAToken *)aToken forRequest:(NSString *)connectionIdentifier
{
NSLog(@"Access token received! %@",aToken);
[manager.engine setAccessToken:aToken];
//I have an OAToken variable called "token" defined in my .h
token = [aToken retain];
NSLog(@"storing token in userdefaults");
//this line is key for maintaining a login token throughout the app
//even when the user closes the app and comes back
[token storeInUserDefaultsWithServiceProviderName:[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleDisplayName"] prefix:@"twitter"];
//call your dm or whatever methods for after login here
.
.
.
}
希望这可以帮助。