尝试在android webview应用程序内进行facebook登录时的空白页面

时间:2017-09-19 12:13:45

标签: javascript android facebook webview

我开发了一个android webview应用程序,一切都很好。但是在网站内你可以通过Facebook按钮登录,该按钮适用于所有浏览器,但不适用于webview应用程序。就在我点击facebook登录按钮时,会出现一个空白页面。

其他人有类似我的问题,但他们可以加载Facebook页面而不是我。

我也试过这些补充:

var

myWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

我还希望它打开内部,然后自动重定向到我网站的登录页面。

编辑: 也许我还应该说facebook登录页面打开时弹出窗口,这似乎是个问题。

3 个答案:

答案 0 :(得分:0)

尝试下面的代码。您将收到错误响应,您将了解该问题。

private void load webPage(){
        private WebView mWebview=null ;

        mWebview  = new WebView(this);

        mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript

        final Activity activity = this;

        mWebview.setWebViewClient(new WebViewClient() {
            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                Toast.makeText(getApplicationContext(), description, Toast.LENGTH_SHORT).show();
            }
        });

        mWebview.loadUrl("YOUR URL");
        setContentView(mWebview );

    }
}

答案 1 :(得分:0)

尝试更改与以下相同的代码

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        WebView htmlWebView = (WebView)findViewById(R.id.webView);
        htmlWebView.setWebViewClient(new CustomWebViewClient());
        WebSettings webSetting = htmlWebView.getSettings();
        webSetting.setJavaScriptEnabled(true);
        webSetting.setDisplayZoomControls(true);
        htmlWebView.loadUrl("https://inducesmile.com/blog");
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }

    private class CustomWebViewClient extends WebViewClient{
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    }
} 

答案 2 :(得分:0)

我们刚刚更改了facebook登录网站,它现在不会出现在弹出窗口中。 Bute theres仍然是一个小问题,你登录facebook后它会带你回到主登录网站。似乎登录不成功,但确实如此。你必须去主站点看看你是否登录。也许有人知道为什么?