有没有办法让FB和Google OAuth登录在桌面构建/模拟器中工作?



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

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

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

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();
});

最新更新