InappBrowser opening Paypal in Normal browser after installing Crosswalk in Ionic - ionic-framework

I am using Braintree payments in my Ionic app. Before installing Crosswalk, it was working fine.
After installing Crosswalk, whenever I click on Paypal button in Dropin page, InappBrowser is trying to open the link in Normal External Browser instead of Webview. Any suggestions how to make Paypal open in Webview only.
I am testing this on Android device. I have cordova-plugin-crosswalk-webview and cordova-plugin-inappbrowser installed and below is my system info.
Cordova CLI: 6.2.0
Ionic Framework Version: 1.1.0
Ionic CLI Version: 1.7.15
Ionic App Lib Version: 0.7.2
ios-deploy version: 1.8.6
ios-sim version: 5.0.8
Node Version: v0.12.4
Xcode version: Xcode 7.2.1 Build version 7C1002

Full disclosure: I work at Braintree. If you have any further questions, feel free to contact support.
The short answer to this is that Braintree does not support Cordova apps. Even if you found a solution to this specific issue, there are enough moving pieces in the compilation that Braintree wouldn't be able to support your integration if/when you went into production.

Things have moved on since #Raymond Berg's answer:
With the advent of Braintree's own PopupBridge, which provides emulated popup behaviour for Android and iOS Webviews, it's now possible to make webpages containing Braintree's JS SDK (and therefore Web Drop-in) work correctly in native Android and iOS Webviews.
Therefore I've just published cordova-plugin-inappbrowser-popup-bridge, which adds support for Braintree's PopupBridge functionality to Cordova's InappBrowser. This makes it possible to support Braintree-powered PayPal payments within the context of the InappBrowser element of Cordova-based Android and iOS apps.

Related

Any cordova plugin to add WebAuthn API to Android WebView?

We've developed a cordova app that shows one of our websites (which is also accessible using a web browser).
Recently, FIDO2 authentication using WebAuthn has been added to that website. This works fine in the tested browsers (Chrome and Firefox), but not in our cordova application, as it uses Android WebView, which doesn't implement the WebAuthn API.
Does anybody know if there is any cordova plugin to add this API to Android WebView?
Is there any website with information about the Android WebView roadmap (bugs that will be fixed in next release, new features that will be added, ...)?
You're correct that Android WebView doesn't support WebAuthn in Android 13. We hope to address that in the Android 14 timeframe but, for now, you have to inject Javascript hooks and use a Javascript bridge to implement it. It's certainly possible to do but I'm not aware of any packaged solutions that do it.

Themeable browser use UIWebView forcefully with ionic capacitor

I am doing ionic application with capacitor.
I have to use https://ionicframework.com/docs/native/themeable-browser plugin for one funcationality but when I make build and upload to apple store app is rejected because of UiWebView issue.
Commands for installing themeable plugin
npm install cordova-plugin-themeablebrowser
npm install #ionic-native/themeable-browser
ionic cap sync
If I remove that plugin and upload it to apple build process pass successfully.
Apple no longer accepts new submissions using UIWebView:
https://forums.developer.apple.com/thread/122114
There is also an Ionic blog article: https://ionicframework.com/blog/understanding-itms-90809-uiwebview-api-deprecation/
You can use Capacitor's Browser API, but it is quite limited compared to some existing Cordova plugins. However it is built around WKWebView and is therefore compliant.
There is AFAIK no alternative but to move to WKWebView if you want your app to be on the Apple App Store.
I assume you are using Themeable Browser instead of InAppBrowser because you need to customize the toolbar and other components. Unfortunately Themeable Browser is no longer a supported project. In InAppBrowser version 5.0.0 https://cordova.apache.org/announcements/2021/02/16/inappbrowser-release-5.0.0.html only uses WKWebView and you can now set InAppBrowserStatusBarStyle to "darkcontent". Unfortunately, other changes have to be applied manually. I succeeded for Android and I fight for Ios :-)

How to build mobile website with ionic 1.2

How does one build a mobile website with ionic 1.2? I can't find any official guides/tutorials/docs.
This is an excerpt from a post on the ionic blog announcing ionic 1.2 release:
Ionic 1.2 marks the first release where we actively recommend Ionic for those looking to build a mobile website (not just an app for the app store)
Well, there's nothing stopping you from deploying it as a web app, as long as you don't have cordova dependencies in your app (for the natives). Also be aware that non webkit based browsers will probably malfunction.
Look at this thread for testimonials with mixed results

Paypal integration in MobileFirst Platform Foundation 6.3

I've been trying to implement a paypal simple payment using PayPal SDK Cordova/Phonegap Plugin into an app with not much luck.
Are there any alternatives to integrate paypal on MobileFirst 6.3? I'm aware that on 7.1 it's enabled to install plugins but my production line can't upgrade for this specific project.
Your best chance is to try integrating your Cordova plug-in in the following manner, otherwise you will need to re-consider using MobileFirst Platform Foundation 7.1's Cordova application type, where this will be easily possible.
See here: https://developer.ibm.com/mobilefirstplatform/2015/08/03/integrating-3rd-party-cordova-plug-ins/

PhoneGap 3/ Cordova 3 does not open up e-mail links (mailto) with the native mail application (ios)

I updated a phonegap 2.5 app to ios7 and cordova 3.1. It runs only on iOS.
When the external links wouldn't open, I included the InAppBrowser plugin and that worked.
But how to I get the mail links (E-Mail me) to open in the native mail program? There is no such plugin.
I tried the contacts plugin. But it wasn't that.
I saw the EMail Composer plugin, but I am looking for support by cordova or a cordova plugin.
I used this simple html style of doing it. Works fine on ios7 and cordova 3.5 and android 4.4
<a href="mailto:abc#gmail.com" data-rel='external'>
I'm not even using any plugins such as inappbrowser, just in case you have that doubt.
Just solved it.
Seems to be a missing feature of the iOS simulator. On my iPhone 4 it works.