SlideShare a Scribd company logo
1 of 20
Download to read offline
Senior System Architect, Google
Developer Expert, Authorised Trainer
REAL-TIME IMAGE
SHARING
JERRY JALAVA
JERRY@QVIK.FI | @W_I
CLIENT ASKS FOR POC…
‣ Users should be able to easily sign-in
(which is required)
‣ Users should be able to upload images
from their camera
‣ Other users should see these images
immediately
‣ Users should be able to manage their
own images
‣ Users should be able to like images of
others
@QVIKJERRY@QVIK.FI | @W_I
DEADLINE IS SET FOR
YESTERDAY
@QVIKJERRY@QVIK.FI | @W_I
SO WHAT DO WE NEED TO DO
‣ Some server to handle our uploads and
other api requests
‣ Scalable storage system for storing the
images
‣ A mechanism to notify all users at once
about new images, and fetch them
‣ Build the Authentication and Listing
views to Android client
@QVIKJERRY@QVIK.FI | @W_I
BUT ALL THAT WILL TAKE
AT LEAST DAYS
@QVIKJERRY@QVIK.FI | @W_I
NOT NECESSARILY
WHAT IF I TOLD YOU,
@QVIKJERRY@QVIK.FI | @W_I
@QVIK
https://firebase.google.comJERRY@QVIK.FI | @W_I
LETS JUST USE FOLLOWING
‣ Firebase Auth
‣ Firebase Storage
‣ Firebase Realtime Database
‣ FirebaseUI

(https://github.com/firebase/firebaseui)
@QVIKJERRY@QVIK.FI | @W_I
NOW WE HAVE SOLVED
‣ Some server to handle our uploads and
other api requests
‣ Scalable storage system for storing the
images
‣ A mechanism to notify all users at once
about new images, and fetch them
‣ For UI, we will use ready components as
much as possible
@QVIKJERRY@QVIK.FI | @W_I
BUILDING
LETS START
@QVIKJERRY@QVIK.FI | @W_I
1. LETS ADD FIREBASE TO OUR APP
@QVIK
We head to https://console.firebase.google.com/ and create new project
JERRY@QVIK.FI | @W_I
1. LETS ADD FIREBASE TO OUR APP
@QVIK
Next we create and download Firebase configuration for our app
JERRY@QVIK.FI | @W_I
2. LETS ENABLE AUTHENTICATION
@QVIK
We head to Authentication / Sign-In method config and enable Anonymous auth
JERRY@QVIK.FI | @W_I
3. LETS BUILD THE BASIC UI
@QVIK
(Create some amazing UI by writing layout XML)
JERRY@QVIK.FI | @W_I
4. FETCH THE ADDED IMAGES WITH LIVE CHANGES
@QVIK
Here is just one simple way of listening for changes in our images collection
JERRY@QVIK.FI | @W_I
5. UPLOAD IMAGE TO STORAGE
@QVIK
Here is just one simple way of uploading a file to Firebase storage
JERRY@QVIK.FI | @W_I
AND WE ARE DONEWELL, ALMOST
@QVIKJERRY@QVIK.FI | @W_I
SCAN THE QR CODE TO INSTALL
HTTPS://GITHUB.COM/JERRYJJ/FIREBASE-STORAGE-
DEMO-ANDROID
LIVE DEMO
@QVIKJERRY@QVIK.FI | @W_I
THANK YOU
www.qvik.fi

More Related Content

What's hot

Azure Integration in Production with Logic Apps and more
Azure Integration in Production with Logic Apps and moreAzure Integration in Production with Logic Apps and more
Azure Integration in Production with Logic Apps and moreBizTalk360
 
Logic Apps – Deployments
Logic Apps – DeploymentsLogic Apps – Deployments
Logic Apps – DeploymentsBizTalk360
 
Creating reusable pieces in Logic Apps
Creating reusable pieces in Logic AppsCreating reusable pieces in Logic Apps
Creating reusable pieces in Logic AppsBizTalk360
 
5 developer Tools To Speed Up Your Workflow
5 developer Tools To Speed Up Your Workflow5 developer Tools To Speed Up Your Workflow
5 developer Tools To Speed Up Your WorkflowNiall Maher
 
Serverless computing con Azure Functions
Serverless computing con Azure FunctionsServerless computing con Azure Functions
Serverless computing con Azure FunctionsHernan Guzman
 
Under the Hood with Headless WordPress and the Google Cloud Platform
Under the Hood with Headless WordPress and the Google Cloud PlatformUnder the Hood with Headless WordPress and the Google Cloud Platform
Under the Hood with Headless WordPress and the Google Cloud PlatformWP Engine
 
Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016 Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016 Yochay Kiriaty
 
Introduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialIntroduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialBizTalk360
 
Serverless Empowering people
Serverless Empowering peopleServerless Empowering people
Serverless Empowering peopleMarcia Villalba
 
Building Faster With Your Team's UI Kit
Building Faster With Your Team's UI KitBuilding Faster With Your Team's UI Kit
Building Faster With Your Team's UI KitAtlassian
 
Tracking Huge Files with Git LFS
Tracking Huge Files with Git LFSTracking Huge Files with Git LFS
Tracking Huge Files with Git LFSAtlassian
 
Novidades Angular 4.x e CLI
Novidades Angular 4.x e CLI Novidades Angular 4.x e CLI
Novidades Angular 4.x e CLI Loiane Groner
 
Creating a server side web app
Creating a server side web appCreating a server side web app
Creating a server side web appjeremyk23
 
Cross Platform Mobile App Development
Cross Platform Mobile App Development Cross Platform Mobile App Development
Cross Platform Mobile App Development Jakir Hossain
 
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using Ruby
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using RubyThe Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using Ruby
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using RubyPradeep Elankumaran
 
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Tracy Lee
 
Bitbucket Pipelines: Serverless CI/CD That Will Save Your Life
Bitbucket Pipelines: Serverless CI/CD That Will Save Your LifeBitbucket Pipelines: Serverless CI/CD That Will Save Your Life
Bitbucket Pipelines: Serverless CI/CD That Will Save Your LifeAtlassian
 
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"Postman
 
Access to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAccess to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAtlassian
 

What's hot (19)

Azure Integration in Production with Logic Apps and more
Azure Integration in Production with Logic Apps and moreAzure Integration in Production with Logic Apps and more
Azure Integration in Production with Logic Apps and more
 
Logic Apps – Deployments
Logic Apps – DeploymentsLogic Apps – Deployments
Logic Apps – Deployments
 
Creating reusable pieces in Logic Apps
Creating reusable pieces in Logic AppsCreating reusable pieces in Logic Apps
Creating reusable pieces in Logic Apps
 
5 developer Tools To Speed Up Your Workflow
5 developer Tools To Speed Up Your Workflow5 developer Tools To Speed Up Your Workflow
5 developer Tools To Speed Up Your Workflow
 
Serverless computing con Azure Functions
Serverless computing con Azure FunctionsServerless computing con Azure Functions
Serverless computing con Azure Functions
 
Under the Hood with Headless WordPress and the Google Cloud Platform
Under the Hood with Headless WordPress and the Google Cloud PlatformUnder the Hood with Headless WordPress and the Google Cloud Platform
Under the Hood with Headless WordPress and the Google Cloud Platform
 
Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016 Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016
 
Introduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialIntroduction to Azure Functions - Tutorial
Introduction to Azure Functions - Tutorial
 
Serverless Empowering people
Serverless Empowering peopleServerless Empowering people
Serverless Empowering people
 
Building Faster With Your Team's UI Kit
Building Faster With Your Team's UI KitBuilding Faster With Your Team's UI Kit
Building Faster With Your Team's UI Kit
 
Tracking Huge Files with Git LFS
Tracking Huge Files with Git LFSTracking Huge Files with Git LFS
Tracking Huge Files with Git LFS
 
Novidades Angular 4.x e CLI
Novidades Angular 4.x e CLI Novidades Angular 4.x e CLI
Novidades Angular 4.x e CLI
 
Creating a server side web app
Creating a server side web appCreating a server side web app
Creating a server side web app
 
Cross Platform Mobile App Development
Cross Platform Mobile App Development Cross Platform Mobile App Development
Cross Platform Mobile App Development
 
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using Ruby
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using RubyThe Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using Ruby
The Big Wave of Indian Startups - Almost Effortless Entrepreneurship Using Ruby
 
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
 
Bitbucket Pipelines: Serverless CI/CD That Will Save Your Life
Bitbucket Pipelines: Serverless CI/CD That Will Save Your LifeBitbucket Pipelines: Serverless CI/CD That Will Save Your Life
Bitbucket Pipelines: Serverless CI/CD That Will Save Your Life
 
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"
Postman Webinar: "From APIs to Serverless Cloud Applications in Minutes"
 
Access to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAccess to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIs
 

Viewers also liked

Portfolio Eleonora Del Pia00
Portfolio Eleonora Del Pia00Portfolio Eleonora Del Pia00
Portfolio Eleonora Del Pia00eleonora_delpia
 
4° año SADO Problemas de salud juveniles actuales
4° año SADO Problemas de salud juveniles actuales4° año SADO Problemas de salud juveniles actuales
4° año SADO Problemas de salud juveniles actualesCecilia Fernandez Castro
 
Pride Recruitment Profile
Pride Recruitment ProfilePride Recruitment Profile
Pride Recruitment Profilevariyan
 
A Ramble Through Cornwall - Day 7
A Ramble Through Cornwall -  Day 7A Ramble Through Cornwall -  Day 7
A Ramble Through Cornwall - Day 7John Downs
 
4° año SADO Derechos sexuales y reproductivos de niños y adolescentes
4° año SADO Derechos sexuales y reproductivos de niños y adolescentes4° año SADO Derechos sexuales y reproductivos de niños y adolescentes
4° año SADO Derechos sexuales y reproductivos de niños y adolescentesCecilia Fernandez Castro
 
Canaleta de red valeria marin.
Canaleta de red valeria marin.Canaleta de red valeria marin.
Canaleta de red valeria marin.Once Redes
 
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...Chris Ellwood
 
Alejandra zabala (2)
Alejandra zabala (2)Alejandra zabala (2)
Alejandra zabala (2)Once Redes
 
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)Ashique Iqbal
 
5° año Biología Evolución del cerebro homo
5° año Biología Evolución del cerebro homo5° año Biología Evolución del cerebro homo
5° año Biología Evolución del cerebro homoCecilia Fernandez Castro
 
TESOL Pedagogy: The Communicative Approach
TESOL Pedagogy:  The Communicative ApproachTESOL Pedagogy:  The Communicative Approach
TESOL Pedagogy: The Communicative Approachryanmccoy2323
 
Monografia e Informes Escritos
Monografia e Informes EscritosMonografia e Informes Escritos
Monografia e Informes EscritosMyrna Rodriguez
 
Receptive skills in english language teaching
Receptive skills in english language teachingReceptive skills in english language teaching
Receptive skills in english language teachingOsnovna šola Pivka
 

Viewers also liked (17)

Portfolio Eleonora Del Pia00
Portfolio Eleonora Del Pia00Portfolio Eleonora Del Pia00
Portfolio Eleonora Del Pia00
 
4° año SADO Problemas de salud juveniles actuales
4° año SADO Problemas de salud juveniles actuales4° año SADO Problemas de salud juveniles actuales
4° año SADO Problemas de salud juveniles actuales
 
Calendario mensual
Calendario mensualCalendario mensual
Calendario mensual
 
Pride Recruitment Profile
Pride Recruitment ProfilePride Recruitment Profile
Pride Recruitment Profile
 
A Ramble Through Cornwall - Day 7
A Ramble Through Cornwall -  Day 7A Ramble Through Cornwall -  Day 7
A Ramble Through Cornwall - Day 7
 
4° año SADO Derechos sexuales y reproductivos de niños y adolescentes
4° año SADO Derechos sexuales y reproductivos de niños y adolescentes4° año SADO Derechos sexuales y reproductivos de niños y adolescentes
4° año SADO Derechos sexuales y reproductivos de niños y adolescentes
 
Canaleta de red valeria marin.
Canaleta de red valeria marin.Canaleta de red valeria marin.
Canaleta de red valeria marin.
 
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...
Lloyds registerofshippingmainatriumwithpandanusutilisandstrelitziareginainsta...
 
Alumnos
AlumnosAlumnos
Alumnos
 
SIICEX - calamar
SIICEX - calamarSIICEX - calamar
SIICEX - calamar
 
Alejandra zabala (2)
Alejandra zabala (2)Alejandra zabala (2)
Alejandra zabala (2)
 
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)
Grameen bank ordinance, 1983 (ordinance no. xlvi of 1983)
 
5° año Biología Evolución del cerebro homo
5° año Biología Evolución del cerebro homo5° año Biología Evolución del cerebro homo
5° año Biología Evolución del cerebro homo
 
Os direitos dos animais
Os direitos dos animaisOs direitos dos animais
Os direitos dos animais
 
TESOL Pedagogy: The Communicative Approach
TESOL Pedagogy:  The Communicative ApproachTESOL Pedagogy:  The Communicative Approach
TESOL Pedagogy: The Communicative Approach
 
Monografia e Informes Escritos
Monografia e Informes EscritosMonografia e Informes Escritos
Monografia e Informes Escritos
 
Receptive skills in english language teaching
Receptive skills in english language teachingReceptive skills in english language teaching
Receptive skills in english language teaching
 

Similar to Real-time Image Sharing

Building Resilient Cloud Native Apps in GKE
Building Resilient Cloud Native Apps in GKEBuilding Resilient Cloud Native Apps in GKE
Building Resilient Cloud Native Apps in GKEJerry Jalava
 
APIs for modern web apps
APIs for modern web appsAPIs for modern web apps
APIs for modern web appsChris Mills
 
JS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSJS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSYuriy Silvestrov
 
LITE 2018 – A Deep Dive Into the API [Iain Brown]
LITE 2018 – A Deep Dive Into the API [Iain Brown]LITE 2018 – A Deep Dive Into the API [Iain Brown]
LITE 2018 – A Deep Dive Into the API [Iain Brown]getadministrate
 
Agility in minutes with APIs and Microservices
Agility in minutes with APIs and MicroservicesAgility in minutes with APIs and Microservices
Agility in minutes with APIs and MicroservicesAxway
 
Visual Automation Framework via Screenshot Comparison
Visual Automation Framework via Screenshot ComparisonVisual Automation Framework via Screenshot Comparison
Visual Automation Framework via Screenshot ComparisonMek Srunyu Stittri
 
Build an Infra Product with AWS Fargate
Build an Infra Product with AWS FargateBuild an Infra Product with AWS Fargate
Build an Infra Product with AWS FargateWill Button
 
Full Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemFull Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemDigamber Singh
 
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapFast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapYuriy Silvestrov
 
Continuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerContinuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerMukta Aphale
 
Azure Static Web Apps
Azure Static Web AppsAzure Static Web Apps
Azure Static Web AppsJen Looper
 
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...Puppet
 
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...Stefana Muller
 
StackMob & Appcelerator Module Part One
StackMob & Appcelerator Module Part OneStackMob & Appcelerator Module Part One
StackMob & Appcelerator Module Part OneAaron Saunders
 
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...Codemotion
 
New ThousandEyes Product Features and Release Highlights: March 2024
New ThousandEyes Product Features and Release Highlights: March 2024New ThousandEyes Product Features and Release Highlights: March 2024
New ThousandEyes Product Features and Release Highlights: March 2024ThousandEyes
 

Similar to Real-time Image Sharing (20)

Building Resilient Cloud Native Apps in GKE
Building Resilient Cloud Native Apps in GKEBuilding Resilient Cloud Native Apps in GKE
Building Resilient Cloud Native Apps in GKE
 
APIs for modern web apps
APIs for modern web appsAPIs for modern web apps
APIs for modern web apps
 
JS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSJS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJS
 
LITE 2018 – A Deep Dive Into the API [Iain Brown]
LITE 2018 – A Deep Dive Into the API [Iain Brown]LITE 2018 – A Deep Dive Into the API [Iain Brown]
LITE 2018 – A Deep Dive Into the API [Iain Brown]
 
Agility in minutes with APIs and Microservices
Agility in minutes with APIs and MicroservicesAgility in minutes with APIs and Microservices
Agility in minutes with APIs and Microservices
 
Visual Automation Framework via Screenshot Comparison
Visual Automation Framework via Screenshot ComparisonVisual Automation Framework via Screenshot Comparison
Visual Automation Framework via Screenshot Comparison
 
slides.pptx
slides.pptxslides.pptx
slides.pptx
 
Build an Infra Product with AWS Fargate
Build an Infra Product with AWS FargateBuild an Infra Product with AWS Fargate
Build an Infra Product with AWS Fargate
 
Full Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemFull Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication System
 
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapFast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
 
Web Kpi
Web KpiWeb Kpi
Web Kpi
 
Continuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerContinuous Testing using Shippable and Docker
Continuous Testing using Shippable and Docker
 
20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Azure Static Web Apps
Azure Static Web AppsAzure Static Web Apps
Azure Static Web Apps
 
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...
PuppetConf 2017: Puppet & Google Cloud: From Nothing to Production in 10 minu...
 
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
 
StackMob & Appcelerator Module Part One
StackMob & Appcelerator Module Part OneStackMob & Appcelerator Module Part One
StackMob & Appcelerator Module Part One
 
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...
 
New ThousandEyes Product Features and Release Highlights: March 2024
New ThousandEyes Product Features and Release Highlights: March 2024New ThousandEyes Product Features and Release Highlights: March 2024
New ThousandEyes Product Features and Release Highlights: March 2024
 

More from Qvik

Design System Ops
Design System OpsDesign System Ops
Design System OpsQvik
 
Secrets in Kubernetes
Secrets in KubernetesSecrets in Kubernetes
Secrets in KubernetesQvik
 
Qvik "4000 mobile concept project" 2015
Qvik "4000 mobile concept project" 2015Qvik "4000 mobile concept project" 2015
Qvik "4000 mobile concept project" 2015Qvik
 
Mobiilin maailman murros
Mobiilin maailman murrosMobiilin maailman murros
Mobiilin maailman murrosQvik
 
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyesti
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyestiOma mobiiliapplikaatio – pitkä oppimäärä lyhyesti
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyestiQvik
 
Personalization in mobile services
Personalization in mobile servicesPersonalization in mobile services
Personalization in mobile servicesQvik
 

More from Qvik (6)

Design System Ops
Design System OpsDesign System Ops
Design System Ops
 
Secrets in Kubernetes
Secrets in KubernetesSecrets in Kubernetes
Secrets in Kubernetes
 
Qvik "4000 mobile concept project" 2015
Qvik "4000 mobile concept project" 2015Qvik "4000 mobile concept project" 2015
Qvik "4000 mobile concept project" 2015
 
Mobiilin maailman murros
Mobiilin maailman murrosMobiilin maailman murros
Mobiilin maailman murros
 
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyesti
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyestiOma mobiiliapplikaatio – pitkä oppimäärä lyhyesti
Oma mobiiliapplikaatio – pitkä oppimäärä lyhyesti
 
Personalization in mobile services
Personalization in mobile servicesPersonalization in mobile services
Personalization in mobile services
 

Recently uploaded

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 

Recently uploaded (20)

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 

Real-time Image Sharing

  • 1. Senior System Architect, Google Developer Expert, Authorised Trainer REAL-TIME IMAGE SHARING JERRY JALAVA JERRY@QVIK.FI | @W_I
  • 2. CLIENT ASKS FOR POC… ‣ Users should be able to easily sign-in (which is required) ‣ Users should be able to upload images from their camera ‣ Other users should see these images immediately ‣ Users should be able to manage their own images ‣ Users should be able to like images of others @QVIKJERRY@QVIK.FI | @W_I
  • 3. DEADLINE IS SET FOR YESTERDAY @QVIKJERRY@QVIK.FI | @W_I
  • 4. SO WHAT DO WE NEED TO DO ‣ Some server to handle our uploads and other api requests ‣ Scalable storage system for storing the images ‣ A mechanism to notify all users at once about new images, and fetch them ‣ Build the Authentication and Listing views to Android client @QVIKJERRY@QVIK.FI | @W_I
  • 5. BUT ALL THAT WILL TAKE AT LEAST DAYS @QVIKJERRY@QVIK.FI | @W_I
  • 6. NOT NECESSARILY WHAT IF I TOLD YOU, @QVIKJERRY@QVIK.FI | @W_I
  • 8. LETS JUST USE FOLLOWING ‣ Firebase Auth ‣ Firebase Storage ‣ Firebase Realtime Database ‣ FirebaseUI
 (https://github.com/firebase/firebaseui) @QVIKJERRY@QVIK.FI | @W_I
  • 9. NOW WE HAVE SOLVED ‣ Some server to handle our uploads and other api requests ‣ Scalable storage system for storing the images ‣ A mechanism to notify all users at once about new images, and fetch them ‣ For UI, we will use ready components as much as possible @QVIKJERRY@QVIK.FI | @W_I
  • 11. 1. LETS ADD FIREBASE TO OUR APP @QVIK We head to https://console.firebase.google.com/ and create new project JERRY@QVIK.FI | @W_I
  • 12. 1. LETS ADD FIREBASE TO OUR APP @QVIK Next we create and download Firebase configuration for our app JERRY@QVIK.FI | @W_I
  • 13. 2. LETS ENABLE AUTHENTICATION @QVIK We head to Authentication / Sign-In method config and enable Anonymous auth JERRY@QVIK.FI | @W_I
  • 14. 3. LETS BUILD THE BASIC UI @QVIK (Create some amazing UI by writing layout XML) JERRY@QVIK.FI | @W_I
  • 15. 4. FETCH THE ADDED IMAGES WITH LIVE CHANGES @QVIK Here is just one simple way of listening for changes in our images collection JERRY@QVIK.FI | @W_I
  • 16. 5. UPLOAD IMAGE TO STORAGE @QVIK Here is just one simple way of uploading a file to Firebase storage JERRY@QVIK.FI | @W_I
  • 17. AND WE ARE DONEWELL, ALMOST @QVIKJERRY@QVIK.FI | @W_I
  • 18. SCAN THE QR CODE TO INSTALL HTTPS://GITHUB.COM/JERRYJJ/FIREBASE-STORAGE- DEMO-ANDROID LIVE DEMO @QVIKJERRY@QVIK.FI | @W_I
  • 19.