Skip to content

Application start

  • If the user came from a dynamic link
    • Get groupId from the link
      • If the user came from a long link or a custom URI scheme, you already have groupId and hash
      • In case of a short link use the part after trailing / to access /inviteLinkHashes/<hash> to get groupId
      • Set the hash to your user's /users/<uid>/inviteLinkHash
    • Open read-only group
      • This needs the user to be logged in; sign in anonymously if not logged in
    • After clicking Join Group
      • Log in (unless already logged in)
      • Merge anonymous (if any) & actual user
      • Assign to member (user picks from existing members, creates a new one, or skips)
      • Go to main screen
  • If the user didn't come from a dynamic link
    • If this is the first launch after installing
      • Show onboarding
      • Show login
      • Show main screen
    • If it's not the first launch
      • Log in
      • Show main screen

Login

Use Firebase UI library if possible for your platform, it does most work.

After a succesful sign-in, we need to get a high-resolution profile picture: - for Facebook, use Facebook Graph SDK, call path me/picture with parameters width and height set to 512. - for Google, replace this in URL you get: replace "/s96-c/" with "/s512-c/"

Then register Push registration token and create/update the user. See Database entities for details.