首页 > 解决方案 > Anroid webview中的Google Login(OAuth2.0)卡在“请稍等...”

问题描述

我正在通过 android studio 制作一个 webview 应用程序。该网络是通过 Vue 创建的,我们计划通过 Google 登录使用该服务。但是,当我从 webview 使用 Google 登录时,我无法使用“请稍等...”这句话登录(但我可以在 PC 上登录!)

我该如何解决?

这是我的代码:

package com.example.upasstest;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {
    private WebView mWebView;
    private WebSettings mWebSettings;

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


        String USER_AGENT = "\"Mozilla/5.0 AppleWebKit/535.19 Chrome/56.0.0 Mobile Safari/535.19\"";

        mWebView = (WebView) findViewById(R.id.webView);

        mWebView.setWebViewClient(new WebViewClient());

        mWebView.clearCache(true);
        mWebView.clearHistory();

        mWebSettings = mWebView.getSettings();

        mWebSettings.setUserAgentString(USER_AGENT);
        mWebSettings.setJavaScriptEnabled(true);
        mWebSettings.setSupportMultipleWindows(false);
        mWebSettings.setJavaScriptCanOpenWindowsAutomatically(true);
        mWebSettings.setLoadWithOverviewMode(true);
        mWebSettings.setUseWideViewPort(true);
        mWebSettings.setSupportZoom(false);
        mWebSettings.setBuiltInZoomControls(false);
        mWebSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
        mWebSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
        mWebSettings.setDomStorageEnabled(true);

        mWebView.loadUrl("my url");
    }
}

标签: javaandroidgoogle-oauthgoogle-signin

解决方案


推荐阅读