【问题标题】:ACAccountStore requestAccessToAccountsWithType:options:completion:accountStoreHandler returns granted = NO immediatelyACAccountStore requestAccessToAccountsWithType:options:completion:accountStoreHandler 返回granted = NO 立即
【发布时间】:2014-09-19 03:11:53
【问题描述】:

我正在尝试使用 iOS 的 Accounts 框架将 Twitter 集成到我的应用程序中。我打电话:

ACAccountStore *accountStore = [[ACAccountStore alloc] init];
ACAccountType *twitter = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[accountStore requestAccessToAccountsWithType:twitter
                                      options:NULL
                                   completion:accountStoreHandler];

accountStoreHandler 是我之前定义的长 C 块。但是,当我运行代码时,accountStoreHandler 会立即被 granted = NOerror = nil 触发,甚至不需要我访问我的 Twitter 帐户。当我转到设置并从那里 Twitter 时,我看到我的应用程序没有被授予访问 Twitter 的权限(我可以看到所有其他应用程序都在那里被授予,是的,我的设备上确实有一个有效/工作的 Twitter 帐户)。问题是,它甚至不像我。此外,我已经删除并重建了我的应用程序,但它仍然没有要求我访问 Twitter。我需要在极端情况下测试 Twitter 登录功能,但如果我从设置中手动授予 Twitter 访问权限,我无法确保一切正常。测试初始 Twitter 登录功能的正确方法是什么?

澄清:是的,我可以从设置中手动授予访问权限并且它可以工作,但我正在寻找一种方法来“模拟”刚刚安装应用程序的设备,我可以'不要在我的设备上复制(它是一个带有 ARM 库的照片应用程序,因此我无法在模拟器上对其进行测试)。

【问题讨论】:

  • 如果您从设备中删除应用程序并重新安装会发生什么情况。从设备中删除应用程序应删除所有以前授予的访问权限。
  • @mohacs 我也这么认为,完全删除了应用程序并从 Xcode 重新部署到我的设备,只是为了看看情况并非如此..

标签: ios ios7 twitter acaccount acaccountstore


【解决方案1】:

根据我的经验,即使我们删除了应用程序,授予的访问权限也会被存储。

我建议你试试模拟器中的功能,如果你想再试一次,你可以随时重置模拟器。

n.b.:我知道回答这个问题已经晚了 5 个月,但我希望搜索这个问题的人会发现它很有用:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-06
    • 1970-01-01
    • 2010-10-14
    • 2014-12-09
    • 2018-02-11
    • 2011-10-16
    • 2016-03-10
    • 2014-03-19
    相关资源
    最近更新 更多