I am currently using the url_launcher dart package for handling urls in my app. I have a basket and checkout flow within my app. At the final stage of this I need to launch a url for the user to confirm their 3ds bank security. Once this is done they can navigate back to the app and see an order confirmation screen.
Currently using the following code which will launch the url successfully and user is able to go through the 3ds check.
Future<void> _launchInWebViewWithJavaScript(String url) async {
if (await canLaunch(url)) {
await launch(
url,
forceSafariVC: true,
forceWebView: true,
enableJavaScript: true,
);
} else {
throw 'Could not launch $url';
}
}
However when using the above method on ios I can see a "Done" button in the top left of the webview which when pressed will take me back to the app.
This button however does not appear on android its simply a webview that fills the whole screen so once the 3ds process is over the user has no way of navigating back in to the app.
Android view as you can see no done button present and the buttons at the bottom dont work:
Can this be achieved with url_launcher? OR should I be using webview_flutter to launch the url on android so I can display an app bar above it and add the ability to go back into the app for android users myself.
The url must be opened in app so I don't want it to open in a separate browser.
I hope I have provided enough information any help is much appreciated.