我正在使用Fabric Login按钮(TWTRLogInButton,https://dev.twitter.com/twitter-kit/ios-reference/twtrloginbutton) .
在我的Swift应用程序中,我可以验证自己,打电话和所有 . 唯一的问题是我实现了一个调用Twitter.logOut()的“Logout”按钮 .
如文档(https://dev.twitter.com/twitter-kit/ios-reference/twitter)所指定,这将删除本地会话,但不会使远程会话无效 . 结果是,一旦我再次使用同一用户登录,就有效地阻止了我切换用户 .
有帮助吗?
4 回答
logOut是一个类方法,你打电话给:
你们面临的不完整的注销问题实际上与iOS持久系统帐户有关 . 如果用户已经登录iOS,TwitterKit会自动将用户登录 . 您可以使用以下步骤在kiosk的使用案例中解决此行为:
在设置> Twitter中登录Twitter
切换到您的应用并尝试使用Twitter登录
当授予访问权限对话框出现时,禁止访问Twitter帐户:
这可以防止TwitterKit访问您的系统帐户,并且每个用户都必须登录 . 希望这可以帮助!
(最初
Twitter.sharedInstance().logOut()
破坏本地 Session ...)使用方法
参数TWTRLoginMethodWebBasedForceLogin
我也遇到了这个问题,但似乎这就是它的行为方式,Twitter使用Accounts框架“保存”操作系统级别的凭据 . 你可以在这里看到:
转到手机上的设置 - > Twitter,您会看到该帐户进入该帐户并“删除帐户”
删除帐户后,您会发现当您启动应用并尝试登录Twitter时,系统会要求您登录 .
一旦添加了帐户,就无法取出帐户(除非Twitter支持并将其公开)用户必须手动进入设置 - > Twitter并从那里删除帐户才能登录一个不同的帐户 .
另外我注意到当你在Twitter上添加另一个帐户时,尝试登录你将有机会在使用
[[Twitter sharedInstance] logInWithCompletion:^(TWTRSession *session, NSError *error)
时登录任一帐户编辑:进一步研究如果用户允许应用程序使用“Twitter”帐户,您可以访问帐户框架并从那里删除帐户:
https://developer.apple.com/library/mac/documentation/Accounts/Reference/ACAccountStoreClassRef/index.html
干杯!