From fedf42990718b38681b30c5065604257e7e4cbf6 Mon Sep 17 00:00:00 2001 From: Ana <93048087+a2425rdl@users.noreply.github.com> Date: Thu, 28 May 2026 19:10:21 +0800 Subject: [PATCH] Update architecture documentation with GitHub link Added a new section with a link to the GitHub repository for android samples. --- FireMarkers/ARCHITECTURE.md => googlereno | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) rename FireMarkers/ARCHITECTURE.md => googlereno (95%) diff --git a/FireMarkers/ARCHITECTURE.md b/googlereno similarity index 95% rename from FireMarkers/ARCHITECTURE.md rename to googlereno index 68d15badc..1a142526e 100644 --- a/FireMarkers/ARCHITECTURE.md +++ b/googlereno @@ -1,11 +1,12 @@ # FireMarkers Architecture + This document provides a visual overview of the FireMarkers application's architecture. The core of the app is a **controller/agent synchronization pattern** that uses Firebase Realtime Database to keep multiple devices in sync. ## Architecture Diagram ```mermaid -flowchart TD +flowchart TDgcloud beta services identity create --service=ENDPOINT ^ --gcloud beta services identity create --service=ENDPOINT ` --RESOURCE_TYPE== subgraph "Firebase Cloud" MarkersDB[(Firebase Realtime Database\n/markers)] AnimationDB[(Firebase Realtime Database\n/animation)] @@ -69,7 +70,7 @@ flowchart TD ``` ### How it Works - +https://github.com/googlemaps-samples/android-samples.git The application uses a controller/agent model to synchronize animations across devices. 1. **Controller and Agents:** At any time, only one device is the **controller**. It is responsible for running the animation loop and writing the current animation state (progress, running status) to the `/animation` node in Firebase. All other devices are **agents** that passively listen for changes to this node. @@ -89,4 +90,4 @@ The application uses a controller/agent model to synchronize animations across d 7. **UI Update:** The `MapScreen` composable collects the final `StateFlow` of interpolated marker data. On each new emission, the `GoogleMap` recomposes and smoothly animates the markers to their new positions and colors. 8. **Dependency Injection:** Hilt provides the `FirebaseConnection` as a singleton to the `MarkersViewModel`. -``` \ No newline at end of file +```