你好! 我正在为Woocommerce网站创建WebView应用程序。我遇到了一个问题。 Woocommerce有一个购物车,我的应用程序有一个BottomNavigationView(片段)。我在WebView中多次将产品添加到购物车,但是CartFragment始终为空。添加到购物车的物品不存在。 我为每个片段创建了一个新的WebViewClient,我想问题是因为如此。 我正在寻找一种解决方案,该解决方案将为所有片段提供一个WebViewClient。这些都是我的猜测。那些知道的人,请帮忙。
家庭片段
webView = (WebView) root.findViewById(R.id.webViewHome);
imageView = (ImageView) root.findViewById(R.id.tenor);
webView.setWebChromeClient(new WebChromeClient());
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webView.getSettings().setAppCacheEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setSavePassword(true);
webSettings.setSaveFormData(true);
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.indexOf("product") != -1) {
Intent intent = new Intent(getContext(), CategoryActivity.class);
intent.putExtra("URL", url);
startActivity(intent);
} else {
view.loadUrl(url);
}
return true;
}
public void onPageFinished(WebView view, String url) {
imageView.setVisibility(root.GONE);
webView.setVisibility(root.VISIBLE);
}
});
webView.setWebChromeClient(new WebChromeClient());
webView.loadUrl("https://bekko.kz/homeappandroid/");
Glide.with(this).load(R.drawable.loading).into(imageView);
return root;
购物车片段
webView = (WebView) root.findViewById(R.id.webViewCart);
imageView = (ImageView) root.findViewById(R.id.tenor);
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webView.getSettings().setAppCacheEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setSavePassword(true);
webSettings.setSaveFormData(true);
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.indexOf("product") != -1) {
Intent intent = new Intent(getContext(), CategoryActivity.class);
intent.putExtra("URL", url);
startActivity(intent);
} else {
view.loadUrl(url);
}
return true;
}
public void onPageFinished(WebView view, String url) {
imageView.setVisibility(root.GONE);
webView.setVisibility(root.VISIBLE);
}
});
webView.loadUrl("https://bekko.kz/cart/");
Glide.with(this).load(R.drawable.loading).into(imageView);