webviewに問題があります。私はonCreateメソッドでurlを取得します。そのページでは、送信ボタンをクリックした後にログイン画面が表示され、別のWebサイトのURLをリダイレクトして新しいタブに移動する必要があります。どうやってやるの?今は何もできません。androidのwebviewで外部リンクをリダイレクトする方法
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (getArguments() != null) {
tvScreenTitle.setText(getArguments().getString(CONTENT_TITLE));
}
new Handler().post(new Runnable() {
@Override
public void run() {
int logoMarginY = (int) (rlScreenHeader.getHeight() * 0.6f);
int logoMarginX = (int) (rlScreenHeader.getWidth() * 0.3f);
UIHelper.setMarginTop(btnBack, logoMarginY - btnBack.getHeight()/2);
UIHelper.setMarginTop(tvScreenTitle, logoMarginY - tvScreenTitle.getHeight()/2);
UIHelper.setMarginLeft(tvScreenTitle, logoMarginX);
}
});
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setSupportMultipleWindows(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onCreateWindow(WebView view, boolean dialog, boolean userGesture, Message resultMsg)
{
webView.loadUrl(url);
return true;
}
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false);
}
});
webView.setWebViewClient(webViewClient);
webView.loadUrl(this.url);
}
これは私のonCreateViewです。あなたは
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.contains("/shuffle")) {
mWebView.loadUrl(url);
return false;
} else {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
startActivity(intent);
return true;
}
}
ユーザーがwebviewで行ったことをどのように理解できますか? – Onur
webviewで送信ボタン自体を意味しますか? –
はい、webviewで開かれたURLです。 – Onur