Open alfongj opened 8 years ago
I am working internally with a designer to obtain UX mocks for this.
It would be great if you added account name change and user photo change, perhaps using glide and optional firebase storage support. BTW great work on the library!
On second thought, provide option to change photo through intent and startActivityForResult perhaps? This way developer can use some sort of image cropping library, upload photo themselves and return link for UI to show.
@krisu7 thanks for the input. If the profile page does include photo support, I think you're right that an Intent with result is the most flexible method.
Hey,
I wanted a profile management in my app and went ahead and implemented it.
It looks sth like this :
Let me know what are your thoughts?
@the-dagger I'm curious, how are you making the circle image view?
@the-dagger nice! That looks good. We are currently working on an account management page for FBUI, it will likely be our next big UI-based feature.
@SUPERCILEX I've had a lot of success using this library: https://github.com/hdodenhof/CircleImageView
@the-dagger I see that you originally submitted #519. Thanks for bringing the discussion to issues before submitting a PR. Right now we're finishing the UX designs for our account management page so we wouldn't accept a PR for that feature.
@samtstern cool, that's what I use in my app! So you'd be fine with including it in FirebaseUI?
@SUPERCILEX yes in theory I'd be fine with that, it's an extremely lightweight dependency. If the account management page uses circular images we will likely use that library to implement.
@samtstern Yep, that was the lib that I used.
@samtstern Got it. it would be awesome if you guys create a separate branch for it once the dev work on it starts. Would be fun contributing to it 🙂
@the-dagger I will definitely do that. We try to do all development and issue tracking in the open, but the UX designers are using some Google-internal tools to do the designs right now so we haven't shared yet.
@samtstern thanks, good to know.
@samtstern awesome, can't wait for that PR to come along! How are you thinking of implementing it? I believe a dialog would look nicer, but we would have to force people to implement some interface to receive results. Or is there another way? I recall I removed an activity that looked like a dialog at some point... Or do your designers tell you want Android component to use? Sorry, that was a lot of questions... I'm just really curious about the design to developer process and how this all works as I don't have a designer. Thanks in advance!
@SUPERCILEX I think those are all open questions. This is something that will live outside the sign in flow, the developer should be able to launch it from anywhere. So it will be different in that way from the rest of the library.
I think I will share the mocks with the community once finalized, that will help.
@samtstern I believe adding a method to the builder that will give an option to the developers to open Profile management either as a dialog or as a new Activity will be a good idea.
@samtstern SGTM!
@the-dagger I like that idea, but it adds extra complexity because we have to share logic between our activity and fragment. In addition, this will confuse the public api: "can you get a response from the dialog?", "should I be overriding onActivityResult
or implementing an interface?", "are the two responses different or can I use them together?" The answers to these questions will be obvious to us, but consumers of the api might be confused even with good documentation. Anyway, we'll have to see; this is just food for thought.
Hm, yeah that makes sense. I didn't take that into consideration.
@SUPERCILEX @samtstern are there any plans or work being done on implementing this feature. I would really like to work on this, so was curious to know if there was any development going on.
@the-dagger there was a lot of work done by @amandle before he left Google: https://github.com/firebase/FirebaseUI-Android/pull/654
We put this on pause to do the phone authentication work. This also means we would now need to incorporate phone auth into the account management flows.
We plan to pick this back up soon, we have a new person joining the team who is going to work on this.
Oh, that's good to know! If you don't mind, can I look around that branch and send in some UI/UX related fixes in the meantime?
@the-dagger yeah why don't you take a look around and then describe the changes you want to make in an issue before doing all the work? I want to run them by the folks who did the original design first (I wasn't too involved with that)
Sure, will do. Thanks! 👍
How is this going, @samtstern?
Still totally on hold, we still don't have a replacement engineer for @amandle so I am mostly focused on just fixing major bugs as they come in rather than features.
Hi @samtstern, any updates on this one? I'll be happy to take this up based on the work done by me earlier or the work done by @amandle in his fork.
@the-dagger apologies for the slow response but this is not really going. @lsirac has some plans for this though, maybe?
For full disclosure I personally am not even in favor of this feature but I am certainly not going to use my one vote to stop anything cool from happening!
Yep, this is one of the features we plan on implementing soon. Email link sign in may come first though.
@samtstern @lsirac Thanks for the update. In case you go ahead and plan on implementing this feature, will be glad to help in the process!
I was looking for a page like this. FirebaseUI should implement it... There are so many validations and conditions and it gets very laborious. Makes the development slower and harder.
Hi @samtstern, was this ever implemented? It would be such a nice feature as most apps need to allow users to update their profiles
@kiptoomm no, this work was never finished and we don't have the UX/Engineering resources to do it in the near future.
I'm apologizing in advance for this but: Hello from 2023! 👋
It would be nice to have a built in component that allows users to manage their account. Specifically the functionality could be: