Iphone 如何确定ios用户是否登录到twitter?
我想确定用户是否登录到twitter,这样我就可以提示他们发布推文,但前提是他们使用ios和twitter进行了设置。另外,是否有办法设置推特屏幕的默认推特?对于iOS 5.x,您可以使用以下方式检查用户是否登录到推特:Iphone 如何确定ios用户是否登录到twitter?,iphone,ios,twitter,Iphone,Ios,Twitter,我想确定用户是否登录到twitter,这样我就可以提示他们发布推文,但前提是他们使用ios和twitter进行了设置。另外,是否有办法设置推特屏幕的默认推特?对于iOS 5.x,您可以使用以下方式检查用户是否登录到推特: [TWTweetComposeViewController canSendTweet] 对于显示带有默认消息的tweet屏幕,您可以执行以下操作: TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewC
[TWTweetComposeViewController canSendTweet]
对于显示带有默认消息的tweet屏幕,您可以执行以下操作:
TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init];
[tweetSheet setInitialText:defaultMsg];
[self presentModalViewController:tweetSheet animated:YES];
你可以参考更多
编辑:对于iOS 6.0及以上版本,请使用:
// requires "Social.framework"
[SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]
因此,示例用法可以是:
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){
[controller dismissViewControllerAnimated:YES completion:Nil];
};
controller.completionHandler = myBlock;
[controller setInitialText:@"#myHashTag"];
[controller addImage:myImage];
[self presentViewController:controller animated:YES completion:Nil];
}
else
{ /* Show error alert, etc*/ }
正如我在评论中所说,如果您使用的是iOS5或更高版本,只需将Twitter.framework添加到您的项目中即可
#import <Twitter/Twitter.h>
//post tweets
- (IBAction)postTapped:(id)sender{
if ([TWTweetComposeViewController canSendTweet])
{
TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init];
[tweetSheet setInitialText:@" #hashtag"];
[self presentModalViewController:tweetSheet animated:YES];
}
else
{
TWTweetComposeViewController *viewController = [[TWTweetComposeViewController alloc] init];
//hide the tweet screen
viewController.view.hidden = YES;
//fire tweetComposeView to show "No Twitter Accounts" alert view on iOS5.1
viewController.completionHandler = ^(TWTweetComposeViewControllerResult result) {
if (result == TWTweetComposeViewControllerResultCancelled) {
[self dismissModalViewControllerAnimated:NO];
}
};
[self presentModalViewController:viewController animated:NO];
//hide the keyboard
[viewController.view endEditing:YES];
}
}
当您展示TWTweetComposeViewController时,它已经检查用户是否登录到twitter,如果没有,则在您使用twitter.Framework时会进入IOS 5及更高版本的设置屏幕。Facebook有类似的功能吗?我知道如何在最新的FB SDK上执行此操作:FBSession.activeSession.isOpen。我没有在旧版本上工作过,所以我无法说明当时是如何完成的。[tweetcomposeviewcontroller canSendTweet]即使我已从设置中删除了我的twitter帐户,仍返回true。已编辑答案!Use IsAvailableForService Type[TWTweetComposeViewController canSendTweet]返回true,即使我已从设置中删除了我的twitter帐户。