0

我正在使用下面的代码来访问用户的 Twitter 帐户。UIAlert 只会在任何给定设备上弹出一次。这似乎是一个一次性的访问请求,一旦被授予或拒绝,您必须进入“设置”来更改它。

显然,作为开发人员,这是没有用的。我需要重新创建第一次提出问题的情况,并导致显示“不允许/允许”的 UIAlert 重新出现。

删除应用程序和所有数据,然后从 XCode 重新编译不起作用。似乎这种许可/拒绝存储在我不知道 [keychain?] 的某个地方。我怎样才能恢复设备认为以前从未授予/拒绝过此权限的所有内容,而不必进入“设置”?

ACAccountStore *accountStore = [[ACAccountStore alloc] init];
ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];

[accountStore requestAccessToAccountsWithType:accountType options:nil completion: ^ (BOOL granted, NSError *error) {
    if(granted == YES){

        // granted code goes here

    } else {

        // not granted code goes here
    }


}];
4

2 回答 2

1

如果不进入设置或更改应用程序的捆绑 ID,则无法重置此设置。由于前者更明智:

转到:设置 -> 常规 -> 重置 -> 重置位置和隐私。

这将导致应用再次请求权限。

于 2014-10-12T11:14:15.477 回答
0

只需转到您的手机或模拟器的设置,然后常规>重置>重置位置和隐私...这将再次请求许可

然后回到设置...下面你会看到推特点击它然后检查推特帐户是否登录,如果没有使用你的推特凭据登录..然后在屏幕下方你可以看到允许这些应用程序使用你的帐户。 ..如果集成过程正确完成..如果关闭,您将看到您的应用程序(项目名称)将其设置为打开..

就是这样去你的xcode项目并再次运行它......

表示赞许,满意,胜利..!!

于 2017-05-13T13:34:16.353 回答