summaryrefslogtreecommitdiffhomepage
path: root/android/docs
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson@mullvad.net>2025-05-13 09:44:23 +0200
committerDavid Göransson <david.goransson@mullvad.net>2025-05-13 09:44:23 +0200
commit3a7029e28bef6406f9a03a42afd1db341f3b0391 (patch)
tree951fa4b9fc1e2d960d45a338e0ae9f26136336f7 /android/docs
parent767cbffbe0d0232bb27f44748c16240aea8fdd10 (diff)
parent6f41d8e2cdef1591985f057220e9c3b5fc344a9a (diff)
downloadmullvadvpn-3a7029e28bef6406f9a03a42afd1db341f3b0391.tar.xz
mullvadvpn-3a7029e28bef6406f9a03a42afd1db341f3b0391.zip
Merge branch 'update-overview-diagram-to-reflect-grpc-migration-droid-1471'
Diffstat (limited to 'android/docs')
-rw-r--r--android/docs/diagrams/nav_graph.pngbin53640 -> 74607 bytes
-rw-r--r--android/docs/diagrams/nav_graph.puml9
-rw-r--r--android/docs/diagrams/overview.pngbin31910 -> 28658 bytes
-rw-r--r--android/docs/diagrams/overview.puml51
4 files changed, 32 insertions, 28 deletions
diff --git a/android/docs/diagrams/nav_graph.png b/android/docs/diagrams/nav_graph.png
index 2d6d6186c2..ba92af26cd 100644
--- a/android/docs/diagrams/nav_graph.png
+++ b/android/docs/diagrams/nav_graph.png
Binary files differ
diff --git a/android/docs/diagrams/nav_graph.puml b/android/docs/diagrams/nav_graph.puml
index 844a6b2570..5916a3cf76 100644
--- a/android/docs/diagrams/nav_graph.puml
+++ b/android/docs/diagrams/nav_graph.puml
@@ -5,7 +5,6 @@ splash --> login
splash --> connect
splash --> revoked
-
revoked --> login
privacy_policy --> login
@@ -23,9 +22,17 @@ connect --> settings
connect --> account
connect --> switch_location
+switch_location --> search
+switch_location --> filter
+switch_location --> edit_custom_lists
+
settings --> vpn_settings
+settings --> api_access
settings --> split_tunneling
settings --> report_problem
+settings --> daita
+settings --> multihop
+settings --> app_info
report_problem --> view_logs
diff --git a/android/docs/diagrams/overview.png b/android/docs/diagrams/overview.png
index e90006d14b..3473991d30 100644
--- a/android/docs/diagrams/overview.png
+++ b/android/docs/diagrams/overview.png
Binary files differ
diff --git a/android/docs/diagrams/overview.puml b/android/docs/diagrams/overview.puml
index 38cf89a38b..02af269709 100644
--- a/android/docs/diagrams/overview.puml
+++ b/android/docs/diagrams/overview.puml
@@ -5,42 +5,39 @@ skinparam SequenceMessageAlign center
skinparam componentStyle rectangle
skinparam linetype polyline
-package "App process" as App {
- component "App UI (fragments, compose, VMs etc)" as AppUI
- component "Middle layer (repositories etc)" as AppMiddleLayer
- component "Messenger" as AppMessenger
-}
+package "App process" as AppProcess {
+ package "Android App" {
+ component "Middle layer (Repositories, UseCases etc)" as AppMiddleLayer
+ component "TileService" as TileService
+ component "App UI (compose, VMs etc)" as AppUI
+ component "MullvadVpnService" as VpnService
+ component "ManagementService" as GrpcClient
+ }
-package "Vpn Service process" as VpnService {
- component "VPN Service implementation" as VpnServiceImpl
- component "Middle layer" as VpnMiddleLayer
- component "Daemon (rust)" as Daemon
- component "Messenger" as VpnMessenger
-}
-package "Tile Service process" as TileService {
- component "Tile Service implementation" as TileServiceImpl
- component "Middle layer" as TileMiddleLayer
- component "Messenger" as TileMessenger
+ package "Daemon (Rust)" as DaemonApp {
+ component "Mullvad JNI" as MullvadJNI
+ component "ManagementServiceInterface" as GrpcServer
+ }
}
-' Messenger (IPC) connections.
-' Also helps with alignment of plantuml packages.
-[AppMessenger] <-[#blue]r-> [VpnMessenger] : Binder
-[VpnMessenger] <-[#blue]r-> [TileMessenger] : Binder
+
+' gRPC connections.
+[GrpcClient] <-[#blue]r-> [GrpcServer] : gRPC (protobuf)
' App connections
AppUI <-d-> AppMiddleLayer
-AppMiddleLayer <-d-> AppMessenger
+TileService <-d-> AppMiddleLayer
+VpnService <-d-> AppMiddleLayer
+AppMiddleLayer <-r-> GrpcClient
' Vpn service connections
-VpnServiceImpl <-d-> VpnMiddleLayer
-VpnServiceImpl <-[#cyan]r-> Daemon : FFI
-VpnMiddleLayer <-[#cyan]r-> Daemon : FFI
-VpnMiddleLayer <-d-> VpnMessenger
+VpnService <-[#red]r-> MullvadJNI : FFI
+
+[AppUI] <-r-> [VpnService] : Binder
-' Tile service connections
-TileServiceImpl <-d-> TileMiddleLayer
-TileMiddleLayer <-d-> TileMessenger
+' Fix alignment
+MullvadJNI <-[hidden]d-> GrpcServer
+TileService <-[hidden]r-> AppUI
@enduml