我只是在Facebook上运行单点登录的演示应用程序,我得到以下内容:
我想要的实际上是这样的:
我希望它不作为网络视图显示,我该怎么做?
答案 0 :(得分:1)
请在此处查看我的回答(回答此问题):
请注意我的警告。 OAuth旨在在您的应用程序之外进行身份验证 - 但在这种情况下,您可以使其在内部工作(但它打破了OAuth的核心原则)。
答案 1 :(得分:0)
当应用程序请求授权或登录时,应用程序通过浏览器获取用户的登录信息(如第二张图片中所示),或者,如果您安装了Facebook应用程序,则从Facebook应用程序获取。看起来您已经安装了Facebook应用程序,因此应用程序会自动从该应用程序中提取用户的信息。
然后,对于用户使用的任何新应用,Facebook会向用户验证用户是否允许应用所请求的功能。
由于您的设备从Facebook应用程序中提取登录信息,因此不使用电子邮件/密码屏幕,并首先显示权限屏幕。允许这些功能后,当您再次为同一用户启动应用时,您不应再次看到该屏幕。
答案 2 :(得分:0)
修改你的Facebook.m
- (void)authorize:(NSArray *)permissions {
self.permissions = permissions;
// with both options NO, authorization always happens in-app
[self authorizeWithFBAppAuth:NO safariAuth:NO];
}