有没有办法让 FB 和 Google OAuth 登录在桌面 build/simulator 中工作?

Is there a way to make FB and Google OAuth logins work in desktop build/simulator?

这些在模拟器和桌面构建中被破坏了。我在某处看到有人 "fixed" 通过手动解析托管它们的嵌入式浏览器并编辑一些 html 内容

是否有更简洁的解决方案或可以更详细解释的解决方案? @Shai 将来会修复这个问题吗?桌面构建是专业订阅的一个巨大好处,并且可能会平衡许多人为此支付的规模。但是社交登录在今天很普遍,您不能指望移动用户为同一应用程序的桌面版本创建单独的登录

在模拟器中,您可以使用凭据进行网络登录,这应该可以正常工作,例如:

Button facebook = new Button("Facebook", Resources.getGlobalResources().getImage("facebook.png"), "FlagButton");
add(facebook);

facebook.addActionListener(e -> {
    final Login fb = FacebookConnect.getInstance();
    fb.setClientId("....");
    fb.setClientSecret("....");
    fb.setRedirectURI("https://www.codenameone.com/");
    fb.setCallback(new LoginCallback() {
        @Override
        public void loginFailed(String errorMessage) {
            ToastBar.showErrorMessage("Login failed: " + errorMessage);
        }

        @Override
        public void loginSuccessful() {                    
            String token = fb.getAccessToken().getToken();
            Response<Map> resp = Rest.get("https://graph.facebook.com/v2.12/me").
                    queryParam("access_token", token).
                    acceptJson().getAsJsonMap();
            String userId = (String)resp.getResponseData().get("id");
            new EnterPasswordForm(null, userId, null).show();
        }
    });
    fb.doLogin();
});