Ich benutze Payfort sdk für Online-Zahlungen mit meiner Anwendung, alles ist voll integriert und funktioniert gut, wenn Sie zur Zahlung kommen, kann ich die Zahlung mit normalen Karten ohne irgendwelche Bedenken tun, aber mit 3-D Secure Cards Ich muss ein Passwort für die Verifikation eingeben, daher öffnet sich ein (verifiziert von Visa) Webview mit dem Passwort-Feld automatisch mit den erforderlichen Details.Payfort mit 3-D Secure Kreditkarten
Das Problem hier ist, wenn das Passwort Feld tippen es den Fokus bekommen, aber die Tastatur öffnet sich nicht, um das Passwort zu schreiben, die Webansicht, die geöffnet ist, ist keine Ansicht von meiner Anwendung und ich habe keine Kontrolle über sie aber schließend.
Ich weiß nicht einmal, wie ich herausfinden kann, dass es jetzt geöffnet ist, da ich keine entsprechenden Rückrufe erhalte.
Durch Code Payfort Navigation, entdeckte ich sie mit einem Layout ein AlertDialog
Ausgabe eines webView
enthält, die die Bestätigungsseite Link führt angezeigt werden:
private Dialog showVerificationDialog(Context context, String url, VerificationDialogDismissListener onDialogListener) {
LayoutInflater layoutInflater = LayoutInflater.from(context); // context here is MyActivity context
View view = layoutInflater.inflate(R.layout.web_dialog, null);
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
// just to display the Dialog at 80% of the screen
view.setMinimumHeight((int) (displayMetrics.heightPixels * 0.8f));
view.setMinimumWidth((int) (displayMetrics.widthPixels * 0.8f));
// setting the webView
WebView webView = (WebView) view.findViewById(R.id.webView);
webView.setWebViewClient(new WebViewClient());
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl(url);
// setting the Dialog
AlertDialog.Builder builder = new AlertDialog.Builder(context)
.setView(view)
.setOnCancelListener(onDialogListener);
if (Build.VERSION.SDK_INT >= 17) {
builder.setOnDismissListener(onDialogListener);
}
Dialog dialog = builder.create();
dialog.show();
return dialog;
}
für das Dieser Dialog enthält die webView Überprüfungsprozess, daher ist das Problem dort, aber ich kann keine Probleme mit diesem Code finden, alles ist Link direkt.