This is a minimal Android TV app that:
- pulls metadata from AniList (GraphQL)
- lists episodes via a placeholder
EpisodeProvider - plays a public test HLS stream via Media3 (ExoPlayer)
- Kotlin: 2.2.21
- Android Gradle Plugin (AGP): 8.13.2
- Gradle: 8.13 (recommended)
- compileSdk / targetSdk: 36
- minSdk: 23
The project includes gradlew and gradle-wrapper.properties, but does not include
gradle/wrapper/gradle-wrapper.jar.
You can still build and run using Android Studio. If you want to build from the command line, regenerate the wrapper JAR once on your machine (instructions below).
- Android Studio (recommended)
- Android SDK Platform 36 installed (SDK Manager → SDK Platforms)
- JDK 17 (Android Studio’s Embedded JDK is fine)
- For a physical device: USB debugging or Wireless debugging enabled on the TV
- Extract the zip.
- Android Studio → File → Open → select the
anime-tv-appfolder. - Let Gradle sync finish.
- Install required SDKs if prompted (especially Android API 36).
- Run:
- Use the device selector (top toolbar) and pick:
- an Android TV emulator, or
- your Android TV device (USB / Wi‑Fi)
- Press Run.
- Use the device selector (top toolbar) and pick:
Android Studio → Tools → Device Manager → Create Device → TV → choose e.g. “Android TV (1080p)”. If you hit Windows hypervisor / virtualization errors, using a physical Android TV device is usually faster.
ADB is part of the Android SDK “Platform-Tools”.
- Android Studio → Tools → SDK Manager → SDK Tools → check Android SDK Platform-Tools.
- On Windows,
adb.exeis typically here:%LOCALAPPDATA%\Android\Sdk\platform-tools\adb.exe
You can either:
- add that folder to PATH, or
- call ADB by full path.
You can run a small backend on your dev machine and let the TV app use it over LAN. This offloads artwork-id mapping and keeps a hot cache on the backend.
- Start backend (same repo):
cd backendnode server.mjs
- Set app config in
local.properties:ARTWORK_BACKEND_URL=http://<your-mac-lan-ip>:8080
- Rebuild + reinstall app.
Backend details are in backend/README.md.
If you want ./gradlew to work in a terminal, generate the wrapper once using any local Gradle installation:
- Windows (PowerShell):
gradle wrapper --gradle-version 8.13 - macOS/Linux:
gradle wrapper --gradle-version 8.13
After that you can run:
./gradlew assembleDebug./gradlew installDebug
- Home → Trending list (from AniList)
- Details → placeholder episodes
- Play → ExoPlayer plays a test HLS stream