SlideShare a Scribd company logo
1 of 41
Android client architecture – part 2
Previously on Android Client Architecture
Once upon a time...
Why do we need a refresh button?
Questions we asked
Why did the user download the app?
To read news.
To watch videos.
What to show?
What the user expects.
What the user didn't know they could expect.
Content segmentation
What's happening right now.
Main headlines/ News splash
News I'm interested in.
General News.
Videos.
Content segmentation – football app
What's happening right now.
Live score / commentary
News I'm interested in.
“Table”
My fav team.
General News.
What the user expects?
What's happening right now
Main title + News splash
What the user expects?
What's happening right now
Main title + News splash
What's Hot
What the user expects?
What's Hot
What the user expects?
What's Hot
Videos
What the user expects?
What's Hot
Interesting News
What's Hot
Videos
Let the numbers decide
Nt = Navigation time.
Fixed.
Depends on my design
Ct = Content time.
Variable.
Depends on the content.
Let the numbers decide
Nt = Navigation time.
Fixed.
Depends on my design
Ct = Content time.
Variable.
Depends on the content.
Min(Nt / Ct)
What the user did not know he can expect?
Text to Speech
News Flash / Live score.
Text to Speech
News Flash / Live score.
Text to Speech
News Flash / Live score.
Only while driving.
Text to Speech
News Flash / Live score.
Only while driving.
When / How to update?
BG Update
What's Hot
BG Update
Interesting
News
Other
BG Update
What's Hot
BG Update
Interesting
News
Other
GCM
Embedded
GCM Embedded
GCM Message can carry 4K payload.
Enough for:
Title
Subtitle
Dimestamp
Image(s) URL(s)
Use Multicast to send to all users.
GCM Embedded
Zero latency
What's hot is always up-to-date.
No loading time
Offline
BG Update
What's Hot
BG Update
Interesting
News
Other
GCM
Embedded
GCM +
Back-off
Inactivity Back-off
Update at periodic interval
Only if received GCM notification.
Double the interval for every redundant update
Inactivity Back-off
BG Update
What's Hot
BG Update
Interesting
News
Other
GCM
Embedded
GCM +
Back-off
Daily /
Bundled
Batch & Bundle updates.
Use SyncAdapter to handle all transactions
Takes care of offline state.
Easy to implement
What's Hot Back-Off App launch
Server
Interesting
News
Sync Adapter
GCM
What's Hot Back-Off App launch
Server
Interesting
News
Sync Adapter
GCM
What's Hot Back-Off App launch
Server
Interesting
News
Sync Adapter
GCM
What's Hot Back-Off App launch
Server
Interesting
News
Sync Adapter
GCM
Context Driver Updates
Is the user standing or walking?
Standing user is more likely to use the app longer.
Change the pre-fetch amount & frequency
accordingly.
Summary
Use GCM to drive updates
Use SyncAdapter to Batch and prefetch.
Context is the king
Which content is more important?
Summary
What's Hot is always up-to-date
Even if we don't have network when the user launches the
app
Most chances that “my news” / “my team” section as well.
Zero latency when launching the app.
Happy Coding

More Related Content

What's hot

Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...
Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...
Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...Codemotion
 
Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java3Pillar Global
 
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...South Tyrol Free Software Conference
 
Android Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineAndroid Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineLars Vogel
 
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
 
POST/CON Keynote 2019
POST/CON Keynote 2019POST/CON Keynote 2019
POST/CON Keynote 2019Postman
 
Automating with FME 2019
Automating with FME 2019Automating with FME 2019
Automating with FME 2019Safe Software
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenAbraham Marin-Perez
 
Webinar Getting Started with FME Desktop: Your Burning Questions Answered
 Webinar Getting Started with FME Desktop: Your Burning Questions Answered Webinar Getting Started with FME Desktop: Your Burning Questions Answered
Webinar Getting Started with FME Desktop: Your Burning Questions AnsweredSafe Software
 
Bluetooth Over-The-Air Firmware Update
Bluetooth Over-The-Air Firmware UpdateBluetooth Over-The-Air Firmware Update
Bluetooth Over-The-Air Firmware UpdateRamin Firoozye
 
Design & Prototype an API
Design & Prototype an APIDesign & Prototype an API
Design & Prototype an APIPostman
 
Android C2DM Presentation at O'Reilly AndroidOpen Conference
Android C2DM Presentation at O'Reilly AndroidOpen ConferenceAndroid C2DM Presentation at O'Reilly AndroidOpen Conference
Android C2DM Presentation at O'Reilly AndroidOpen ConferenceLars Vogel
 
Docker Management and Kubernetes Orchestration
Docker Management and Kubernetes OrchestrationDocker Management and Kubernetes Orchestration
Docker Management and Kubernetes OrchestrationJeremy Likness
 

What's hot (15)

Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...
Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...
Rafaëla Breed - Tracing performance of your service calls - Codemotion Amster...
 
Aptana Jaxer
Aptana JaxerAptana Jaxer
Aptana Jaxer
 
Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java
 
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
 
Android Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineAndroid Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App Engine
 
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"
 
POST/CON Keynote 2019
POST/CON Keynote 2019POST/CON Keynote 2019
POST/CON Keynote 2019
 
Automating with FME 2019
Automating with FME 2019Automating with FME 2019
Automating with FME 2019
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with Maven
 
Hybrid cloud
Hybrid cloudHybrid cloud
Hybrid cloud
 
Webinar Getting Started with FME Desktop: Your Burning Questions Answered
 Webinar Getting Started with FME Desktop: Your Burning Questions Answered Webinar Getting Started with FME Desktop: Your Burning Questions Answered
Webinar Getting Started with FME Desktop: Your Burning Questions Answered
 
Bluetooth Over-The-Air Firmware Update
Bluetooth Over-The-Air Firmware UpdateBluetooth Over-The-Air Firmware Update
Bluetooth Over-The-Air Firmware Update
 
Design & Prototype an API
Design & Prototype an APIDesign & Prototype an API
Design & Prototype an API
 
Android C2DM Presentation at O'Reilly AndroidOpen Conference
Android C2DM Presentation at O'Reilly AndroidOpen ConferenceAndroid C2DM Presentation at O'Reilly AndroidOpen Conference
Android C2DM Presentation at O'Reilly AndroidOpen Conference
 
Docker Management and Kubernetes Orchestration
Docker Management and Kubernetes OrchestrationDocker Management and Kubernetes Orchestration
Docker Management and Kubernetes Orchestration
 

Viewers also liked

Manipulating Android tasks and back stack
Manipulating Android tasks and back stackManipulating Android tasks and back stack
Manipulating Android tasks and back stackRan Nachmany
 
Mobile connectivity - doing it right
Mobile connectivity - doing it rightMobile connectivity - doing it right
Mobile connectivity - doing it rightRan Nachmany
 
Clean architecture on android
Clean architecture on androidClean architecture on android
Clean architecture on androidBenjamin Cheng
 
File Format Benchmarks - Avro, JSON, ORC, & Parquet
File Format Benchmarks - Avro, JSON, ORC, & ParquetFile Format Benchmarks - Avro, JSON, ORC, & Parquet
File Format Benchmarks - Avro, JSON, ORC, & ParquetOwen O'Malley
 
Android Clean Architecture for Dummies
Android Clean Architecture for DummiesAndroid Clean Architecture for Dummies
Android Clean Architecture for DummiesKengo Suzuki
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applicationsHassan Dar
 

Viewers also liked (7)

Manipulating Android tasks and back stack
Manipulating Android tasks and back stackManipulating Android tasks and back stack
Manipulating Android tasks and back stack
 
Mobile connectivity - doing it right
Mobile connectivity - doing it rightMobile connectivity - doing it right
Mobile connectivity - doing it right
 
Annotation processing
Annotation processingAnnotation processing
Annotation processing
 
Clean architecture on android
Clean architecture on androidClean architecture on android
Clean architecture on android
 
File Format Benchmarks - Avro, JSON, ORC, & Parquet
File Format Benchmarks - Avro, JSON, ORC, & ParquetFile Format Benchmarks - Avro, JSON, ORC, & Parquet
File Format Benchmarks - Avro, JSON, ORC, & Parquet
 
Android Clean Architecture for Dummies
Android Clean Architecture for DummiesAndroid Clean Architecture for Dummies
Android Clean Architecture for Dummies
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applications
 

Similar to Android client architecture – part 2 key takeaways

Engineering Update Q-SEE 2-2015
Engineering Update Q-SEE 2-2015Engineering Update Q-SEE 2-2015
Engineering Update Q-SEE 2-2015Gordon Waughan
 
Control Your Video App's Destiny: Managing your post-launch D2C strategy
Control Your Video App's Destiny: Managing your post-launch D2C strategyControl Your Video App's Destiny: Managing your post-launch D2C strategy
Control Your Video App's Destiny: Managing your post-launch D2C strategyJoshua Shulman, MA
 
7.26.12 hmc gtm review
7.26.12   hmc gtm review7.26.12   hmc gtm review
7.26.12 hmc gtm reviewLeslie Howard
 
Video production in the cloud for live streaming
Video production in the cloud for live streamingVideo production in the cloud for live streaming
Video production in the cloud for live streamingPaul Richards
 
IRJET- Summarized News Application using TF-IDF
IRJET- Summarized News Application using TF-IDFIRJET- Summarized News Application using TF-IDF
IRJET- Summarized News Application using TF-IDFIRJET Journal
 
B tech project sample- petrol pump management system project in vb.net .
B tech project sample- petrol pump management system project in vb.net  .B tech project sample- petrol pump management system project in vb.net  .
B tech project sample- petrol pump management system project in vb.net .Study Stuff
 
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin Inc
 
Project Proposal - Software Pack Solution 14
Project Proposal - Software Pack Solution 14Project Proposal - Software Pack Solution 14
Project Proposal - Software Pack Solution 14Syed Farjad Zia Zaidi
 
How to use Bluetooth® Smart to control your embedded device with a mobile device
How to use Bluetooth® Smart to control your embedded device with a mobile deviceHow to use Bluetooth® Smart to control your embedded device with a mobile device
How to use Bluetooth® Smart to control your embedded device with a mobile deviceAnaren, Inc.
 
Essentials of developing_tizen_web_application_en_1.0
Essentials of developing_tizen_web_application_en_1.0Essentials of developing_tizen_web_application_en_1.0
Essentials of developing_tizen_web_application_en_1.0Saima Ashiq
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
 
Strategies on How to Overcome Security Challenges Unique to Cloud-Native Apps
Strategies on How to Overcome Security Challenges Unique to Cloud-Native AppsStrategies on How to Overcome Security Challenges Unique to Cloud-Native Apps
Strategies on How to Overcome Security Challenges Unique to Cloud-Native AppsVMware Tanzu
 
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres..."Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...Edge AI and Vision Alliance
 
Mobile CICD
Mobile CICD Mobile CICD
Mobile CICD Gurzu Inc
 
Open stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshareOpen stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshareSumit Naiksatam
 
Tech Brief Questions
Tech Brief Questions Tech Brief Questions
Tech Brief Questions webhostingguy
 
Tech Brief Questions
Tech Brief Questions Tech Brief Questions
Tech Brief Questions webhostingguy
 

Similar to Android client architecture – part 2 key takeaways (20)

NLite Middleware
NLite MiddlewareNLite Middleware
NLite Middleware
 
Engineering Update Q-SEE 2-2015
Engineering Update Q-SEE 2-2015Engineering Update Q-SEE 2-2015
Engineering Update Q-SEE 2-2015
 
Control Your Video App's Destiny: Managing your post-launch D2C strategy
Control Your Video App's Destiny: Managing your post-launch D2C strategyControl Your Video App's Destiny: Managing your post-launch D2C strategy
Control Your Video App's Destiny: Managing your post-launch D2C strategy
 
7.26.12 hmc gtm review
7.26.12   hmc gtm review7.26.12   hmc gtm review
7.26.12 hmc gtm review
 
Video production in the cloud for live streaming
Video production in the cloud for live streamingVideo production in the cloud for live streaming
Video production in the cloud for live streaming
 
IRJET- Summarized News Application using TF-IDF
IRJET- Summarized News Application using TF-IDFIRJET- Summarized News Application using TF-IDF
IRJET- Summarized News Application using TF-IDF
 
B tech project sample- petrol pump management system project in vb.net .
B tech project sample- petrol pump management system project in vb.net  .B tech project sample- petrol pump management system project in vb.net  .
B tech project sample- petrol pump management system project in vb.net .
 
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
 
Project Proposal - Software Pack Solution 14
Project Proposal - Software Pack Solution 14Project Proposal - Software Pack Solution 14
Project Proposal - Software Pack Solution 14
 
How to use Bluetooth® Smart to control your embedded device with a mobile device
How to use Bluetooth® Smart to control your embedded device with a mobile deviceHow to use Bluetooth® Smart to control your embedded device with a mobile device
How to use Bluetooth® Smart to control your embedded device with a mobile device
 
Essentials of developing_tizen_web_application_en_1.0
Essentials of developing_tizen_web_application_en_1.0Essentials of developing_tizen_web_application_en_1.0
Essentials of developing_tizen_web_application_en_1.0
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
 
Strategies on How to Overcome Security Challenges Unique to Cloud-Native Apps
Strategies on How to Overcome Security Challenges Unique to Cloud-Native AppsStrategies on How to Overcome Security Challenges Unique to Cloud-Native Apps
Strategies on How to Overcome Security Challenges Unique to Cloud-Native Apps
 
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres..."Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...
"Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product," a Pres...
 
Mobile CICD
Mobile CICD Mobile CICD
Mobile CICD
 
Lean Software Delivery
Lean Software DeliveryLean Software Delivery
Lean Software Delivery
 
Open stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshareOpen stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshare
 
Tech Brief Questions
Tech Brief Questions Tech Brief Questions
Tech Brief Questions
 
Tech Brief Questions
Tech Brief Questions Tech Brief Questions
Tech Brief Questions
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Android client architecture – part 2 key takeaways

Editor's Notes

  1. Who here is first GDG? Who saw / read the android client architecture?
  2. Displayed the quick, dirty and wrong Solution 1: service Solution 2: content provider Solution 3 – sync adapter
  3. I'd like to share with you a story / process that I've gone through, building the next version of an applicatin that may or may not exist, in a country that may exist but soon will be under attack. In a meeting we discussed newer designs and we talked about the action bar. We placed a share button, like button and refresh button, And then – someone in the room asked:
  4. My response: Well.. when the user want an updated data – he clicks on refresh and then we go and fetch... Everybody nodded ahhhh Then he asked: I thought the user ALWAYS wants the most updated data. The use case that you describe does not exists.
  5. We decided to kill the refresh button. RIP After some work we had a version with no refresh in it. But....
  6. OOPS – battery performance
  7. DOPE. We went back to the drawing board.
  8. In order to answer what the user expects we took a deeper look at our content
  9. We had an argue: some said the user expects to see videos, others said the user wants to see news in the fields that he is interested in.
  10. We had an argue: some said the user expects to see videos, others said the user wants to see news in the fields that he is interested in.
  11. We had an argue: some said the user expects to see videos, others said the user wants to see news in the fields that he is interested in. What do you guys think? Who thinks A? Who thinks B? We decided to go with the mathematical approach
  12. We decided to go with news that I like and not videos. The next question:
  13. Basically there are two types of updates: 1. FG 2. BG I'm gonna talk about BG only, as FG is edge case of BG. Intense research showed that the changes are at server side. Hence – it will make sense to have server trigger updates.
  14. Three types of updates: What's hot / Interesting News / Other What's hot – research shows that the change is on the server side ==> Server Trigger. Server Trigger == GCM
  15. Like before: Server trigger. Let the client adjust the update frequency and not update for every change ==> Be more efficient
  16. Batch: If I touch the network – Fetch “other” as well. If not – not.
  17. So – our components are...
  18. We can improve even more with fine grain pre-fetch and batching by being more contextual