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

Und*_*ion 3 iphone authentication twitter ios5 acaccount

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

requestAccessToAccountsWithType:withCompletionHandler:

但如果应用程序未获得授权,则会弹出对话框.如何静默检查应用程序是否已获得授权

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

 NSArray *twitterAccounts = [store accountsWithAccountType:twitterAccountType];
Run Code Online (Sandbox Code Playgroud)

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

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

  1. 用户未授予使用Twitter的应用程序权限.
  2. 用户已授予权限但尚未设置任何Twitter帐户.

还有TWTweetComposeViewController canSendTweet,如果该应用程序被授权并有至少一个帐户设置,这将返回true.但是,如果返回false,这并不能让我能够分辨出两种情况之间的区别.

小智 7

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

所以我会检查一下你是否先获得授权,如果是,那么请拉出twitter帐户列表,看看数组中是否有任何内容.