diff --git a/mobile/android/app/src/main/AndroidManifest.xml b/mobile/android/app/src/main/AndroidManifest.xml
index f289b99..d242d61 100644
--- a/mobile/android/app/src/main/AndroidManifest.xml
+++ b/mobile/android/app/src/main/AndroidManifest.xml
@@ -7,6 +7,16 @@
+
+
+
+
+
@@ -14,7 +24,7 @@
-
+
-
+
@@ -51,5 +61,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mobile/android/app/src/main/java/com/goon/mobile/MainActivity.kt b/mobile/android/app/src/main/java/com/goon/mobile/MainActivity.kt
index b27e53a..1585701 100644
--- a/mobile/android/app/src/main/java/com/goon/mobile/MainActivity.kt
+++ b/mobile/android/app/src/main/java/com/goon/mobile/MainActivity.kt
@@ -13,7 +13,8 @@ import com.reactnative.googlecast.api.RNGCCastContext
import expo.modules.ReactActivityDelegateWrapper
-class MainActivity : ReactActivity() {
+// open, bo dziedziczy z niej TvMainActivity (to samo, tylko bez blokady pionu).
+open class MainActivity : ReactActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
// Set the theme to AppTheme BEFORE onCreate to support
// coloring the background, status bar, and navigation bar.
diff --git a/mobile/android/app/src/main/java/com/goon/mobile/TvMainActivity.kt b/mobile/android/app/src/main/java/com/goon/mobile/TvMainActivity.kt
new file mode 100644
index 0000000..6b37da3
--- /dev/null
+++ b/mobile/android/app/src/main/java/com/goon/mobile/TvMainActivity.kt
@@ -0,0 +1,19 @@
+package com.goon.mobile
+
+/**
+ * Wejscie dla Android TV. Ta sama aktywnosc co na telefonie, rozni sie WYLACZNIE wpisem
+ * w manifescie: telefon ma blokade pionu, telewizor jej nie ma, bo ekran telewizora jest
+ * na stale poziomy i pionowa aplikacja wychodzi tam waskim paskiem na srodku.
+ *
+ * Dlaczego osobna klasa, a nie jedna aktywnosc:
+ * - `setRequestedOrientation` w `onCreate` to zmiana konfiguracji, wiec system
+ * relaunchuje aktywnosc tuz po starcie i na TV zostawal bialy ekran (widok Reacta nie
+ * wracal; emulator android-34 android-tv, 2026-09-17),
+ * - orientacja z zasobu (`values-television`) nie przechodzi, bo manifest czyta zasoby
+ * bez kontekstu konfiguracji (lint ManifestResource),
+ * - `activity-alias` nie pozwala nadpisac `screenOrientation`.
+ *
+ * Telewizorowy launcher pyta o `LEANBACK_LAUNCHER`, wiec na telefonie ta klasa jest
+ * niewidoczna, a na TV widoczna jest tylko ona.
+ */
+class TvMainActivity : MainActivity()
diff --git a/mobile/android/app/src/main/res/drawable/tv_banner.png b/mobile/android/app/src/main/res/drawable/tv_banner.png
new file mode 100644
index 0000000..334fb9d
Binary files /dev/null and b/mobile/android/app/src/main/res/drawable/tv_banner.png differ