我正在开发一个在 iOS6/7 上运行的应用程序,并在 Twitter 上发布自定义视图。为了改善用户体验,如果没有可用的系统帐户,我会向用户展示一个 webview 以输入他们的凭据,按照 ACAccountCredential.h 中的建议将它们存储在 ACAccountStore 中并使用它来发布。
它在 iOS6 上运行良好,但在 iOS7 上共享失败并出现 401 错误。奇怪的是,该帐户在 ACAccountStore 中没有错误地保存,并且可以被 Twitter 应用程序用于在 Twitter 上阅读和发布(无需进一步登录),所以我假设该帐户(令牌和令牌秘密)工作正常.
SLRequest *postRequest = nil;
NSURL *url = [NSURL URLWithString:@"http://api.twitter.com/1/statuses/update.json"];
NSDictionary *content = @{@"status":self.textToShare};
postRequest = [SLRequest requestForServiceType:SLServiceTypeTwitter
requestMethod:SLRequestMethodPOST
URL:url
parameters:content];
[postRequest setAccount:self.twitterAccount];
[postRequest performRequestWithHandler:completionHandler];
我也尝试使用 API v1.1,但似乎没有帮助。有任何想法吗?