使用iOS5中的Twitter框架提示登录提醒?

Bil*_*ren 8 twitter objective-c ios

大家都知道,因为iOS5有一个原生的Twitter框架,可以很容易地从你的应用发布推文.

有没有办法提示将用户转发到设置应用程序并要求输入用户名和密码的警报?

我知道我可以使用以下代码解决问题:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=TWITTER"]];
Run Code Online (Sandbox Code Playgroud)

但那是没有文档的代码..

提前致谢

关心比利(我在SO上的第一篇文章)

Non*_*oto 8

在iOS5.1中,我们应该使用TWTweetComposeViewController来显示对话框,因为苹果使用prefs拒绝应用程序:root = TWITTER.

但是,我不喜欢显示推文屏幕和键盘,
所以我想出了隐藏它们的方法,但显示弹出屏幕.

更新: Apple使用这个技巧批准我的应用程序.


在此输入图像描述

    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];

    //this approach doesn't work since you can't jump to settings
//    [self dismissModalViewControllerAnimated:NO];
Run Code Online (Sandbox Code Playgroud)


Mic*_*lum 6

您不需要实现此功能,如果您设置Twitter集成以在Twitter上发布帖子并且iOS检测到没有设置Twitter帐户,它将自动为您执行此操作!

这是我在iOS 5.1上的iPhone 4S上运行的一个应用程序的屏幕截图

删除"首选项"链接是指开发人员的自定义操作,如链接到您自己的首选项菜单.这不适用,因为Twitter不仅是iOS 5的内置功能,而且弹出通知您的UIAlertView不是由开发人员处理的,它是iOS的自动功能.

在此输入图像描述