在WebView中使用Facebook登录Pinterest的Android功能无法正常工作

3

Android - 我正在使用webview加载以下url "https://www.pinterest.com",它成功地加载了,但是当我点击Pinterest上的通过Facebook登录或通过Google登录时,它会加载一个空白屏幕而不是实际结果。以下是我的代码,请帮助我。相同的代码适用于其他url,但仅Pinterest无法正常工作。

public class Pinterest extends Fragment {

private WebView wv1;
String url="https://www.pinterest.com";
private ProgressBar progress;
View mView;
WebSettings settings;
ImageView back,top;
public Pinterest() {
    // Required empty public constructor
}

@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setHasOptionsMenu(true);
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    mView= inflater.inflate(R.layout.pinterest, container, false);
    wv1 =  mView.findViewById(R.id.pin_webView);
    progress = mView.findViewById(R.id.pin_progressBar);
    back= mView.findViewById(R.id.go_back);
    top= mView.findViewById(R.id.goToTop);
    progress.setMax(100);
    settings = wv1.getSettings();
    settings.setJavaScriptEnabled(true);
    settings.setAllowContentAccess(true);
    settings.setDomStorageEnabled(true);
    wv1.setWebViewClient(new myWebClient());
    wv1.setVerticalScrollBarEnabled(true);
    wv1.setHorizontalScrollBarEnabled(true);
    wv1.loadUrl(url);
    progress.setProgress(0);
    wv1.setWebChromeClient(new WebChromeClient() {
        @Override
        public void onProgressChanged(WebView view, int newProgress) {
            setValue(newProgress);
            if (newProgress == 100) {
                progress.setVisibility(View.GONE);
            }
            super.onProgressChanged(view, newProgress);
        }
    });
    back.setOnClickListener(v -> {
        if(wv1.canGoBack())wv1.goBack();
    });

    top.setOnClickListener(v -> {
        Constants.goTop(wv1);
    });
    return mView;
}
public void setValue(int progress) {
    this.progress.setProgress(progress);
}



public class myWebClient extends WebViewClient {
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        // TODO Auto-generated method stub
        super.onPageStarted(view, url, favicon);
    }

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        // TODO Auto-generated method stub

        System.out.println("when you click on any interlink on webview that 
    time you got url :-" + url);
    //            view.loadUrl(url);
        return false;

    }

    @Override
    public void onPageFinished(WebView view, String url) {
        System.out.println("your current url when webpage loading.. finish" 
    + url);
        super.onPageFinished(view, url);
         }


       }


   }

1
你找到解决方案了吗? - Samuel Méndez
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接