Giter Club home page Giter Club logo

Comments (7)

Salakar avatar Salakar commented on July 24, 2024 2

@XiangtianDai ok, makes sense, will work around it to match the ios & web implementations,

Another couple inconsistency queries if I may:

  • FIROptions vs FirebaseOptions:
    • On the iOS implementation (FIROptions) it's possible to get and set the clientId.
    • On the android implementation (FirebaseOptions) there's no way to get the clientId on an initialised app, and, there's also no way to set the clientId via FirebaseOptions.Builder.
  • FIRApp vs FirebaseApp:
    • On the iOS implementation (FIRApp) it's possible to delete an initialised app via deleteApp.
    • On the android implementation (FirebaseApp) there's no way, or at least a documented way of deleting an initialised app.

I have some other inconsistency issues between ios & android and am unsure where to address these? (sorry if this is the wrong place 🙈 ) Right now though the ones above are my main concern - could you perhaps if possible advise on solutions/workarounds please?

from firebase-ios-sdk.

XiangtianDai avatar XiangtianDai commented on July 24, 2024 1

@Salakar I'm sorry that Firebase Auth's implementations for the list of providers are inconsistent between platforms. On both iOS and Web this implied "firebase" provider (which is represented as the user object itself) is omitted from the array, while on Android it is listed as an explicit provider in the array. At this moment I don't see how we can change any of the implementations without breaking existing developer code that may have already depended on them, so my suggestion is:

  • If you are on Android and want iOS behavior, filter out the "firebase" provider from the result array returned bygetProviderData() method.
  • If you are on iOS and want Android behavior, add the FIRUser instance itself to the beginning of the result array returned by providerData property getter.

from firebase-ios-sdk.

XiangtianDai avatar XiangtianDai commented on July 24, 2024 1

@davidair for FirebaseCore

from firebase-ios-sdk.

Salakar avatar Salakar commented on July 24, 2024

@XiangtianDai @davidair any updates on my previous comments?

from firebase-ios-sdk.

morganchen12 avatar morganchen12 commented on July 24, 2024

@Salakar there's no workarounds for the two things you mentioned. It's likely that we can change Android to suit iOS behavior as a non-breaking change, since it just involves adding API stuff.

This is tracked internally at b/67354438, and isn't likely to be a priority for the time being.

from firebase-ios-sdk.

ryanwilson avatar ryanwilson commented on July 24, 2024

@protocol86 - can you address whether or not the Android solution or iOS solution is the correct one here? If iOS is correct, we should close this bug and address it internally on the Android side since there's no actionable items for this repo.

from firebase-ios-sdk.

protocol86 avatar protocol86 commented on July 24, 2024

The iOS library exhibits the expected functionality. A bug has been filed against the Android SDK, who will release it as soon as is feasible (though they are somewhat limited due to this being a breaking change).

from firebase-ios-sdk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.