我想在我的iOS應用程序集成Twitter
。推特的iOS 6和7:發佈推文,而無需用戶的確認
的應用有望支持iOS versions 6.x & 7.x
。
我想直接發佈tweet
,一旦用戶點擊我的UI
中的按鈕,而不再詢問SLComposeViewController
警報中的確認。
我已經通過以下哪些職位說該怎麼做了,問題是,它們均配置爲iOS 5.x
。
我去究竟是如何呢?
任何幫助將不勝感激。
我想在我的iOS應用程序集成Twitter
。推特的iOS 6和7:發佈推文,而無需用戶的確認
的應用有望支持iOS versions 6.x & 7.x
。
我想直接發佈tweet
,一旦用戶點擊我的UI
中的按鈕,而不再詢問SLComposeViewController
警報中的確認。
我已經通過以下哪些職位說該怎麼做了,問題是,它們均配置爲iOS 5.x
。
我去究竟是如何呢?
任何幫助將不勝感激。
我看不出有什麼差別,從iOS 5.1 to iOS 6.0,既不iOS 6.1 to 7.0 Twitter的API。
使用iOS 5的教程,並用ALT +鼠標左鍵選中,告知deprications或修改的功能,如果有。
在兩個鏈接你提到他們使用Twitter的API V1。它被廢棄了很久以前的事:API V1 no longer function相反,你應該使用V1.1使發佈鳴叫的URL將被https://api.twitter.com/1.1/statuses/update.json
此外TWRequest
也不贊成使用的iOS 6.0,你應該使用SLRequest
這是一個簡單的代碼這樣做:
- (void) sendTweetWithoutPromp:(NSString*) tweetText
{
NSString *url = @"https://api.twitter.com/1.1/statuses/update.json";
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithCapacity:0];
[params setObject:tweetText forKey:@"status"];
ACAccountStore *accountStore = [[ACAccountStore alloc] init];
ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[accountStore requestAccessToAccountsWithType:accountType options:nil completion:^(BOOL granted, NSError *error) {
if(granted)
{
NSArray *accountsArray = [accountStore accountsWithAccountType:accountType];
if ([accountsArray count] > 0)
{
ACAccount *twitterAccount = [accountsArray objectAtIndex:0];
SLRequest *postRequest = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:TWRequestMethodPOST URL:[NSURL URLWithString:url] parameters:params ];
[postRequest setAccount:twitterAccount];
[postRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
{
NSString *output = [NSString stringWithFormat:@"HTTP response status: %i", [urlResponse statusCode]];
NSLog(@"output = %@",output);
dispatch_async(dispatch_get_main_queue(), ^{
if (error)
{
}
});
}];
}
else
{
NSLog(@"no Account in Settings");
}
}
}];
}
什麼問題? iOS 5.x代碼在絕大多數iOS上都可以完美運行。 – Laszlo
不,一些API已經改變了! – footyapps27