gpt4 book ai didi

ios - 代号一。使用 Webview 组件登录 Facebook

转载 作者:行者123 更新时间:2023-11-29 11:59:03 26 4
gpt4 key购买 nike

我的 cn1 应用程序包含使用 Facebook 和 Google+ 登录。当在 Iphone 上调用 doLogn() 时,将打开一个 Safari 页面,允许用户分别输入 Facebook 或 Google 的凭据。我面临的问题是我的应用程序刚刚被苹果公司拒绝,因为用户被带出应用程序并进入 safari 以便使用 Facebook 或谷歌登录,根据苹果公司的说法,这提供了“糟糕的用户体验”。 Apple 建议我使用 Safari View Controller API,它允许在应用程序中显示 URL 和检查来自嵌入式浏览器的证书,以便客户可以验证网页 URL 和 SSL 证书,以确认他们正在输入他们的登录凭据一个合法的页面。

我注意到 Codename one 有一个 WebView 组件。但是,当我调用 doLogin() 时,我不确定是否可以在 Webview 而不是 Safari 中打开 url。如果是。我如何实现这一目标,Web View 是正确的组件吗?或者我是否需要使用 Safari View Controller API,如果需要,我该如何将此 api 添加到我的 cn1 项目中,甚至可能吗?

我建议 codenameone 将此合并到他们的 Facebook 和 Google 登录功能中,以防止任何 future 的用户被应用商店拒绝。

这似乎在 native Iphone 应用程序上自动发生 - Safari web view opening when logging to FB through iOS 9 .对于 IOS,我应该尝试实现原生 Facebook 登录吗?如果是这样。我从哪说起呢?

final Login fb = FacebookConnect.getInstance();
fb.setClientId("XXXXXXXXXXXXXX");
fb.setClientSecret("XXXXXXXXXXXXX");
fb.setRedirectURI("http://www.mibrandapp.com");
FaceBookAccess.setPermissions(new String[]{"id", "name", "first_name", "last_name"});
fb.setScope("id");
fb.setCallback(new LoginCallback() {
@Override
public void loginFailed(String errorMessage) {
Dialog dg = new Dialog();
dg.setTitle("Login failed");
dg.show();
}

@Override
public void loginSuccessful() {
....
}
});
//fb.doLogin();
fb.nativelogin();

最佳答案

目前,Codename One 构建服务器使用 Facebook IOS SDK 4.4,它使用默认行为打开 Facebook 应用程序进行身份验证(如果已安装)和 Safari 应用程序(如果未安装)。

如果您切换到“iphone_new”构建目标(很快将成为标准),它将使用更新的 Facebook IOS SDK 4.12,它将(默认情况下)在您的应用程序的 Web View 中处理身份验证。

对这种方法进行一些测试,我发现,在 iOS 9 上,您需要将以下内容添加到您的 ios.plistInject 中构建提示:

<key>LSApplicationQueriesSchemes</key><array><string>fbauth2</string></array>

我刚刚提交了一个自动包含此内容的更改,因此在下一次服务器更新(可能在星期五)之后,它会在没有此构建提示的情况下正常工作。

2016 年 6 月 14 日更新

我刚刚在 SVN 中更新了它,这样它将默认使用 IOS SDK 4.12,无需进行任何更改即可解决此问题。服务器将在周五更新 - 之后您应该能够发送您的构建(没有特殊构建提示)并且它会工作。

关于ios - 代号一。使用 Webview 组件登录 Facebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37808517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com