How to avoid opening Safari for Firebase phone auth reCAPTCHA on iOS?

Viewed 140

Edit (2021/03/12)

The reason for the rejection turned out to be something else. In my second submission, Apple provided more details.

Original

My app got rejected by Apple because of:

We noticed that the user is taken to Safari to sign in or register for an account, which provides a poor user experience.

The problem is that Safari is opened for the phone auth reCAPTCHA. They recommend using a WebView (I believe) instead of switching to Safari:

We recommend implementing the Safari View Controller API to display web content within your app. The Safari View Controller allows the display of a URL and inspection of the certificate from an embedded browser in an app so that customers can verify the webpage URL and SSL certificate to confirm they are entering their sign in credentials into a legitimate page.

I saw this in the Firebase docs, but honestly I don't have a clue how that would work. This is a React Native app and I'm using react-native-firebase. I don't know Objective-C.

Optional: If you want to customize the way your app presents the SFSafariViewController or UIWebView when displaying the reCAPTCHA to the user, create a custom class that conforms to the FIRAuthUIDelegate protocol, and pass it to verifyPhoneNumber:UIDelegate:completion:.

Could anybody help me out? How can I achieve this?

0 Answers
Related