# attajak/acestream-engine-android architecture

> Architecture diagram of the GitHub repository attajak/acestream-engine-android, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-09). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/attajak/acestream-engine-android
- Repository: https://github.com/attajak/acestream-engine-android

## Overview

This repository is the Android Ace Stream Engine application shell. Its shown runtime entry point installs an application factory and tracks activity lifecycle events; when the last activity stops, it broadcasts an app-background event. The tree also names engine, client, TIF-provider, and playback-related modules, but the README documents no further product behavior and their source was not sampled, so their runtime relationships are not inferred here.

Main entry points: [`app/src/main/java/org/acestream/core/CoreApplication.java`](https://github.com/attajak/acestream-engine-android/blob/master/app/src/main/java/org/acestream/core/CoreApplication.java) (Core application)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_application["Android application"]
  node_core_app["Core application"]
end

node_acestream_sdk["AceStream SDK"]
node_engine_application["Engine application"]
node_android_runtime["Android runtime"]

node_core_app -->|"sets factory"| node_acestream_sdk
node_core_app -->|"initializes"| node_engine_application
node_core_app -->|"registers lifecycle"| node_android_runtime
node_core_app -->|"broadcasts background"| node_android_runtime

click node_core_app "https://github.com/attajak/acestream-engine-android/blob/master/app/src/main/java/org/acestream/core/CoreApplication.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_core_app toneBlue
class node_acestream_sdk,node_engine_application,node_android_runtime toneIndigo
```

## Components

### Android application

- [Core application](https://github.com/attajak/acestream-engine-android/blob/master/app/src/main/java/org/acestream/core/CoreApplication.java): `app/src/main/java/org/acestream/core/CoreApplication.java`

### Other components

- **AceStream SDK**
- **Engine application**
- **Android runtime**

## Connections

- Core application → AceStream SDK: sets factory (evidence: `app/src/main/java/org/acestream/core/CoreApplication.java`)
- Core application → Engine application: initializes (evidence: `app/src/main/java/org/acestream/core/CoreApplication.java`)
- Core application → Android runtime: registers lifecycle (evidence: `app/src/main/java/org/acestream/core/CoreApplication.java`)
- Core application → Android runtime: broadcasts background (evidence: `app/src/main/java/org/acestream/core/CoreApplication.java`)
