How codelightstudios/android-smart-login works
Android Smart Login is a library and sample app for custom, Facebook, and Google sign-in, returning a common SmartUser and retaining a current-user session. The sample activity configures the library, starts login or signup, forwards activity results, and handles callbacks. Provider implementations and session handling are sampled; factory/configuration details and CustomLogin internals are not, so uncertain internal wiring is omitted.
Main entry points: MainActivity.java Sample activity · FacebookLogin.java Facebook login · GoogleLogin.java Google login · UserSessionManager.java Session manager
Components 15
Sample app
- Sample activity
app/src/main/java/studios/codelight/smartlogin/MainActivity.java
Login API
- Login factory
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/SmartLoginFactory.java - Login API
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/SmartLogin.java - Login config
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/SmartLoginConfig.java - Login callbacks
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/SmartLoginCallbacks.java
Login providers
- Facebook login
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/FacebookLogin.java - Google login
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/GoogleLogin.java - Custom login
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/CustomLogin.java
Users and sessions
- User mapping
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/util/UserUtil.java - SmartUser models
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/users/SmartUser.java - Session manager
smartloginlibrary/src/main/java/studios/codelight/smartloginlibrary/UserSessionManager.java
Other components
- App user
- Facebook SDK
- Google sign-in
- Android preferences
Connections 18
- App user → Sample activity: chooses login
- Sample activity → Login factory: builds provider
- Sample activity → Login API: starts login
- Sample activity → Login API: forwards result
- Sample activity → Login config: configures
- Sample activity → Login callbacks: implements
- Facebook login → Facebook SDK: requests sign-in
- Google login → Google sign-in: requests sign-in
- Facebook login → User mapping: maps profile
- Google login → User mapping: maps profile
- User mapping → SmartUser models: creates
- Facebook login → Session manager: saves user
- Google login → Session manager: saves user
- Session manager → Android preferences: reads and writes
- Sample activity → Session manager: loads current user
- Facebook login → Login callbacks: reports result
- Google login → Login callbacks: reports result
- Sample activity → Custom login: provides custom auth