ユーザーの iOS デフォルト Twitter アカウントにアクセスしようとしています。
STTwitter ライブラリを使用します。以下のコードは、以前は私のデバイスで正常に動作していましたが、現在は動作していません。返された「oAuthToken」、「oAuthTokenSecret」、および「userID」は nil です。しかし、それはまだシミュレーターで動作しています
STTwitterAPI *twitter = [STTwitterAPI twitterAPIWithOAuthConsumerName:nil
consumerKey:@"myConsumerKey"
consumerSecret:@"myConsumerSecret"];
[twitter postReverseOAuthTokenRequest:^(NSString *authenticationHeader) {
STTwitterAPI *twitterAPIOS = [STTwitterAPI twitterAPIOSWithFirstAccount];
[twitterAPIOS verifyCredentialsWithSuccessBlock:^(NSString *username) {
[twitterAPIOS postReverseAuthAccessTokenWithAuthenticationHeader:authenticationHeader
successBlock:^(NSString *oAuthToken,
NSString *oAuthTokenSecret,
NSString *userID,
NSString *screenName) {
// use the tokens...
self.oAuthToken = oAuthToken;
self.oAuthTokenSecret = oAuthTokenSecret;
if(self.oAuthToken && self.oAuthTokenSecret){
completionHandler();
}
else{
ACAccountStore *account = [[ACAccountStore alloc] init];
ACAccountType *accountType = [account accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
NSArray *arrayOfAccounts = [account accountsWithAccountType:accountType];
[account renewCredentialsForAccount:[arrayOfAccounts firstObject] completion:^(ACAccountCredentialRenewResult renewResult, NSError *error) {
[self getUserTwitterDataFromPhoneSettingsInView:view WithCompletionHandler:completionHandler];
}];
}
} errorBlock:^(NSError *error) {
// Error
}];
} errorBlock:^(NSError *error) {
// no twitter account
// user denied access to their account(s)
}];
} errorBlock:^(NSError *error) {
// ...
}];