如何区分没有Twitter访问权限的应用程序和没有帐户安装程序的Twitter之间的区别?

时间:2012-07-12 18:00:19

标签: iphone authentication ios5 twitter acaccount

我理解如何使用以下方式请求Twitter访问:

requestAccessToAccountsWithType:withCompletionHandler

但如果该应用未经授权,则会弹出对话框。如何静默检查如果应用已获得授权

我可以使用以下方式查看帐户数量:

 NSArray *twitterAccounts = [store accountsWithAccountType:twitterAccountType];

但如果我的应用程序未获得授权并且没有可用帐户,我将获得一个空数组。我无法找到找出这些情况的方法。

澄清我需要区分以下情况:

  1. 用户未授予使用Twitter的应用程序权限。
  2. 用户已授予权限但尚未设置任何Twitter帐户。
  3. 如果应用已获得授权并且至少有一个帐户设置,则还会TWTweetComposeViewController canSendTweet返回true。但是,如果返回false,这也不能让我能够分辨出两种情况之间的区别。

1 个答案:

答案 0 :(得分:7)

看起来每个帐户类型都有一个accessGranted属性,您可以查看是否有权使用它:http://developer.apple.com/library/ios/#DOCUMENTATION/Accounts/Reference/ACAccountTypeClassRef/Reference/Reference.html#//apple_ref/doc/uid/TP40011022

所以我会检查一下你是否先获得授权,如果是的话,然后拉出twitter帐户列表,看看阵列中是否有任何内容。