gpt4 book ai didi

ios - iOS Twitter框架:如何获取(在回调中)用于发推的最后一个Twitter帐户?

转载 作者:行者123 更新时间:2023-12-01 19:18:29 25 4
gpt4 key购买 nike

用户发布推文后,我需要区分他使用了哪个Twitter帐户。假设用户在电话上配置了1个或多个帐户。

推文成功后,我需要知道这一点,所以正确的地方应该是回调。我尝试使用ACAccountStore来获取帐户,但是它提供了一个在手机上设置的所有帐户的数组,而不是有关最后使用的帐户的线索(甚至不是数组的顺序)。

有谁知道TWTweetComposeViewController是否记住该帐户,以及如何获取它?

谢谢

我的代码:

if ([TWTweetComposeViewController canSendTweet])
{
TWTweetComposeViewController *tweetSheet =
[[TWTweetComposeViewController alloc] init];
[tweetSheet setInitialText:@"initial text"];
[tweetSheet addImage:[UIImage imageNamed:image]];

// Callback
tweetSheet.completionHandler = ^(TWTweetComposeViewControllerResult result) {
// if tweet was successful
if(result == TWTweetComposeViewControllerResultDone) {

// Get the accounts
account = [[ACAccountStore alloc] init];
ACAccountType *accountType = [account accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];

[account requestAccessToAccountsWithType:accountType withCompletionHandler:^(BOOL granted, NSError *error)
{
// if access granted I populate the array
if (granted == YES) {
NSArray *arrayOfAccounts = [account accountsWithAccountType:accountType];

ACAccount *account1 = [arrayOfAccounts objectAtIndex:0];
ACAccount *account2 = [arrayOfAccounts objectAtIndex:1];

NSString *username1 = account1.username;
NSString *username2 = account2.username;

// Always same order
NSLog(userName1);
NSLog(userName2);

}
}];

[self furtherMethodsInCaseOfSuccessfulTweet];


} else if(result == TWTweetComposeViewControllerResultCancelled) {
NSLog(@"twit canceled");
}
[self dismissViewControllerAnimated:YES completion:nil];
};


[self presentModalViewController:tweetSheet animated:YES];

}
else
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"No tweet is possible on this device" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alertView show];

}

}

最佳答案

我找到了一个方法。

取而代之的是在TWTweetComposeViewController的实例中查找用户名,让我们使用GET users/lookup来查询ACAccountStore收集的名称。

http://api.twitter.com/1/users/lookup.xml?screen_name=username1,username2
(使用json代替xml)

解析结果后,我们可以获得用户最后一条推文的日期/时间(“状态”标签),瞧,我们拥有最后使用的帐户。
此外,您可以在console上测试qwery结果。

感谢@theSeanCook

关于ios - iOS Twitter框架:如何获取(在回调中)用于发推的最后一个Twitter帐户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11547214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com