My app(both in IOS and Android) allows users to register with Facebook and Email(for now). Let's say if a user registered with Facebook. Then user Logged-in with Facebook and then from the user profile, should I allow the user to enter password in order to Login with both Facebook and Email/Password? How the other app doing this?
I think using FB login should be optional in some systems, especially if you expect long usage of such, as it's always a dependency. User may want to delete his FB account (e.g. FB may get not-so-trendy in 5 years) and this is a potential risk for your system, as users would stop using it just because they do not use Facebook any more.
So, in these cases, providing an alternative rather than depending on social login only is a good practice in my eyes, the same way as providing social login (as an alternative, again) is a good practice for quicker and easier access to the site/app.
However - this may not apply to some strictly Facebook related applications (when application flow is strictly connected with the social network). You can also skip it in systems that are created for temporary amusement (online games with a life of a month or so) as probably the way users sign in to these will not probably during this period. They are purely for fun, so after all using Facebook login seems to be good choice in their case - of course if you do not target users who don't use Facebook, but this is a strategic question).
We had iOS apps with separated FB and email login. If a user registered using FB then he used FB acc for login to the app. When he registered with an email then he used an email for login.
The logic why we not asked the password for FB user:
- FB account speeds up login to app - if user is logged in to FB on the device then he is logged in to your app after install automatically
- No need to remember the second password - user has to remember just his FB password
- But FB is useful not because of 1&2 but if you need profile data, for instance email, profile fields, friends list, etc. Depends on your app's logic.
So if you need 3 then you have no need to ask for your own password. But if you only need 1/2 then no need to integrate with FB at all.