Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PhoneAuthProvider improvement for ios #528

Merged
merged 6 commits into from
Jun 15, 2024
Merged

Conversation

kiiskristo
Copy link

FIRAuthUIDelegateProtocol is not available outside of the firebase-kotlin-sdk library, so there is no way to inject PhoneVerificationProvider to verifyPhoneNumber method. That makes PhoneAuthProvider impossible to use on IOS platform.

…brary, so there is no point to use it in PhoneVerificationProvider
@kiiskristo
Copy link
Author

I could also update this PR to just have FIRAuthUIDelegateProtocol as optional and have less changes in code:
val delegate: FIRAuthUIDelegateProtocol?

Instead of:
val delegate: Any?

That UIDelegate is mostly for viewcontroller based architecture and most of people use SwiftUI nowadays.

@BasBuijsen
Copy link
Contributor

Im not a maintainer or anything on this project but isnt is better to add an interface that has the same functions the delegate has? Then you can use that type for the delegate variable and can create a wrapper class for the custom delegate class here that will automatically call the underlying firebase delegate itself.

Just sharing my idea here, this may turn out to be harder than i explain so take it with a grain of salt :)

@Daeda88
Copy link
Contributor

Daeda88 commented Jun 11, 2024

FIRAuthUIDelegateProtocol should just be a typealias for FIRAuthUIDelegate on the iOS side. You are right however that it can be null, so you should probably use your alternative suggestion.

@kiiskristo
Copy link
Author

kiiskristo commented Jun 12, 2024

@BasBuijsen - thank you, actually ended up doing similar way as you described for now.
@Daeda88 - updated PR to alternative way, looks cleaner and reflects native IOS SDK with optional delegate.

@kiiskristo kiiskristo changed the title PhoneAuthProvider for ios PhoneAuthProvider for ios, js, android Jun 12, 2024
@kiiskristo kiiskristo changed the title PhoneAuthProvider for ios, js, android PhoneAuthProvider Fix for ios, js, android Jun 12, 2024
@kiiskristo kiiskristo changed the title PhoneAuthProvider Fix for ios, js, android PhoneAuthProvider Fix for io Jun 13, 2024
@kiiskristo kiiskristo changed the title PhoneAuthProvider Fix for io PhoneAuthProvider improvement for ios Jun 13, 2024
@nbransby nbransby merged commit ba3d156 into GitLiveApp:master Jun 15, 2024
2 of 3 checks passed
@Varun-Sethi-Dev
Copy link

Can Some one guide me on how to use this Phone Authentication i am able to send the otp but how to do verification

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants