Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Xamarin WebView:无法使用Facebook和Google帐户登录_Javascript_Android_Html_Ios_Xamarin - Fatal编程技术网

Javascript Xamarin WebView:无法使用Facebook和Google帐户登录

Javascript Xamarin WebView:无法使用Facebook和Google帐户登录,javascript,android,html,ios,xamarin,Javascript,Android,Html,Ios,Xamarin,我无法在webview中使用facebook登录按钮和google登录按钮登录。他们将弹出他们的登录页面 Xamarin WebView的问题: Facebook-登录后,它会将我重定向到空白页,而不是返回到上一页 谷歌-谷歌将我重定向到他们的政策页面,说我不应该使用嵌入式webview,而是必须使用我的设备浏览器(Chrome等) 我是一个网站开发人员,所以我是这个案件的新手。我需要使用Webview,因为我有最后期限 有没有办法使登录按钮从html重定向到设备浏览器登录?还是有别的办法解决这

我无法在webview中使用facebook登录按钮和google登录按钮登录。他们将弹出他们的登录页面

Xamarin WebView的问题:

  • Facebook-登录后,它会将我重定向到空白页,而不是返回到上一页

  • 谷歌-谷歌将我重定向到他们的政策页面,说我不应该使用嵌入式webview,而是必须使用我的设备浏览器(Chrome等)

  • 我是一个网站开发人员,所以我是这个案件的新手。我需要使用Webview,因为我有最后期限

    有没有办法使登录按钮从html重定向到设备浏览器登录?还是有别的办法解决这个问题

    这是从Facebook生成的按钮:

    <div class="fb-login-button" data-max-rows="1" data-size="large" data-button-type="continue_with" data-show-faces="false" data-auto-logout-link="false" data-use-continue-as="false"></div>
    

    它会将我重定向到空白页
    否,它会将您重定向到您在开发控制台中输入的
    重定向URL
    Google将我重定向到他们的策略页面
    use any custom user agent header我使用了custom user agent,我最终可以进入Google登录页面,但在我从该页面登录后,我的webview中会出现一个空白屏幕。在我的网站中,任何成功的登录都会被javascript捕获,然后重定向到授权页面。不知何故,webview无法模拟相同的工作流。
    <div class="g-signin2" data-onsuccess="onSignIn" data-theme="light" data-width="300" data-height="50" data-longtitle="true">button</div>
    
    function onSignIn(googleUser) {
        var profile = googleUser.getBasicProfile();
        $('#frm_externalLogin').find('#Provider').val('Google');
        $('#frm_externalLogin').find('#ProviderDisplayName').val( profile.getName());
        $('#frm_externalLogin').find('#ProviderUserId').val(profile.getId());
        $('#frm_externalLogin').find('#Email').val(profile.getEmail());
    
        $('#frm_externalLogin').submit();
    }
    
    function FBLogin() {
        FB.api('/me?fields=id,name,email', function (response) {
            $('#frm_externalLogin').find('#Provider').val('Facebook');
            $('#frm_externalLogin').find('#ProviderDisplayName').val( response.name);
            $('#frm_externalLogin').find('#ProviderUserId').val(response.id);
            $('#frm_externalLogin').find('#Email').val(response.email);
    
            $('#frm_externalLogin').submit();
        });
    }