ADB ile reklamları, gereksiz servisleri ve ağır ana ekranı temizleme
Bu sayfa, ErenGK tarafından gerçek bir Xiaomi Mi Box S üzerinde uygulanıp test edilen debloat ve hızlandırma sürecinin teknik dökümüdür. Amaç cihazı rootlamadan, bootloader açmadan ve sistem APK’larını silmeden daha hafif, daha sade ve geri alınabilir bir kurulum oluşturmaktı.
Sonuç: ne değişti?
MemAvailable 1,077,876 kB/data: 5.0 GB toplam, %61 kullanım.dumpsys meminfo snapshot’ı dosyaya alınmadığı için dürüst bir “önce/sonra toplam RAM” yüzdesi vermek mümkün değil. Bu nedenle yalnızca doğrulanmış final değerleri ve süreç içindeki ara ölçümler gösteriliyor.İçindekiler
1. ADB kurulumu ve Mi Box’a bağlanma
Mi Box’ta Geliştirici Seçenekleri açıldı, USB hata ayıklama etkinleştirildi ve cihaz ile Mac aynı ağda kullanıldı. IP adresini kendi ağınızdan bulun; özel IP adresini internette paylaşmayın.
brew install android-platform-tools
adb version
adb connect <MI_BOX_IP>:5555
adb devices
Android 11+ cihazlarda Wireless Debugging eşleştirmesi gerekiyorsa adb pair kullanılabilir. Bu cihaz Android TV 9 olduğu için klasik :5555 bağlantısı yeterliydi.
2. Önce ölç, sonra değiştir
Debloat işleminde en güvenli yaklaşım, önce cihazın gerçek paket listesini görmek ve paketleri marka/model özelinde değerlendirmektir.
adb shell getprop ro.product.model
adb shell getprop ro.build.version.release
adb shell getprop ro.build.version.sdk
adb shell getprop ro.build.fingerprint
adb shell pm list packages -s
adb shell pm list packages -3
adb shell pm list packages -d
adb shell dumpsys meminfo
adb shell df -h
Test edilen cihaz
Neden paket listesi şart?
İnternetteki TCL, Chromecast veya başka marka debloat listelerini aynen uygulamak risklidir. Aynı işlev farklı cihazlarda farklı package adıyla gelebilir.
3. FLauncher: stok launcher’ı kapatmadan önce alternatif HOME
Bu Mi Box’ta aktif HOME paketi şu komutla bulundu:
adb shell cmd package resolve-activity --brief \
-a android.intent.action.MAIN \
-c android.intent.category.HOME
Çıktı:
com.google.android.tvlauncher/.MainActivity
FLauncher kurulduktan sonra paket/activity doğrulandı:
adb shell pm list packages -3 | grep -i flauncher
adb shell cmd package query-activities \
-a android.intent.action.MAIN \
-c android.intent.category.HOME
Bu cihazda set-home-activity komutu “Success” dönmesine rağmen Xiaomi/Google stok launcher önceliğini bırakmadı. Bu nedenle FLauncher çalıştığı doğrulandıktan sonra stok launcher geri alınabilir biçimde kapatıldı:
adb shell am start -n me.efesser.flauncher/.MainActivity
adb shell pm disable-user --user 0 com.google.android.tvlauncher
adb shell am start -n me.efesser.flauncher/.MainActivity
Son kontrol:
adb shell cmd package resolve-activity --brief \
-a android.intent.action.MAIN \
-c android.intent.category.HOME
adb shell dumpsys activity activities | grep mResumedActivity
Finalde HOME: me.efesser.flauncher/.MainActivity
4. Animasyonları 0.5x yapma ve cache budama
Bu işlem işlemciyi hızlandırmaz; arayüz geçişlerinin bekleme süresini yarıya indirerek cihazın daha seri hissettirmesini sağlar.
adb shell settings put global window_animation_scale 0.5
adb shell settings put global transition_animation_scale 0.5
adb shell settings put global animator_duration_scale 0.5
Kontrol:
adb shell settings get global window_animation_scale
adb shell settings get global transition_animation_scale
adb shell settings get global animator_duration_scale
Cache:
adb shell pm trim-caches 1G
5. Devre dışı bırakılan sistem paketleri
Sistem uygulamalarında silme yapılmadı. Yalnızca pm disable-user --user 0 kullanıldı. Böylece tek komutla geri açılabilirler.
| Paket | Ne olduğu / neden kapatıldı? | Durum |
|---|---|---|
com.google.android.tvlauncher | Stok Android TV ana ekranı. FLauncher devraldıktan sonra kapatıldı. | Disabled |
com.google.android.tvrecommendations | Öneri/recommendation satırlarının altyapısı. | Disabled |
com.miui.tv.analytics | Xiaomi TV analytics/telemetri servisi; foreground service olarak RAM’de çalışıyordu. | Disabled |
com.google.android.katniss | Google Assistant / sesli arama. Kullanılmadığı ve cihazda ağır çalıştığı için kapatıldı. | Disabled |
com.google.android.backdrop | Google ekran koruyucu / backdrop. | Disabled |
com.google.android.feedback | Google geri bildirim bileşeni. | Disabled |
com.google.android.tv.bugreportsender | Android TV bug report gönderici. | Disabled |
com.google.android.onetimeinitializer | Google ilk kurulum sonrası tek seferlik initializer. | Disabled |
com.android.onetimeinitializer | Android ilk kurulum initializer. | Disabled |
com.xiaomi.android.tvsetup.partnercustomizer | Xiaomi/partner setup özelleştirme bileşeni. | Disabled |
com.google.android.tungsten.setupwraith | Android TV setup/fallback bileşeni. | Disabled |
com.google.android.play.games | Google Play Games; kullanılmıyordu. | Disabled |
com.google.android.videos | Google Play Movies/TV; kullanılmıyordu. | Disabled |
com.google.android.youtube.tvmusic | YouTube Music TV; kullanılmıyordu. | Disabled |
com.amazon.amazonvideo.livingroom | Prime Video sistem uygulaması; kullanılmıyordu. | Disabled |
com.mitv.videoplayer | Xiaomi yerleşik video oynatıcı; ihtiyaç yoktu. | Disabled |
tv.alphonso.alphonso_eula | Alphonso EULA / içerik tanıma ilişkili bileşen. | Disabled |
com.google.android.speech.pumpkin | Google offline speech / voice stack parçası. | Disabled |
com.android.printspooler | Yazdırma servisi; TV’de ihtiyaç yok. | Disabled |
com.android.dreams.basic | Android temel screensaver/dream bileşeni. | Disabled |
com.google.android.syncadapters.contacts | Google kişi senkronizasyon adaptörü. | Disabled |
com.google.android.syncadapters.calendar | Google takvim senkronizasyon adaptörü. | Disabled |
com.android.wallpaperbackup | Duvar kağıdı yedekleme. | Disabled |
com.android.backupconfirm | Android backup onay bileşeni. | Disabled |
android.autoinstalls.config.xioami.mibox3 | Xiaomi otomatik ön yükleme konfigürasyonu. | Disabled |
com.google.android.marvin.talkback | TalkBack ekran okuyucu; kullanılmıyordu. | Disabled |
com.google.android.tts | Google Text-to-Speech; bu kullanımda gerekli değildi. | Disabled |
com.google.android.tv | Live Channels; tuner olmayan Mi Box’ta kullanılmıyordu. | Disabled |
com.xm.webcontent | Xiaomi web içerik bileşeni. | Disabled |
com.mitv.download.service | Xiaomi içerik/indirme servisi. | Disabled |
com.mitv.tvhome.michannel | Mi Channel / içerik kanalları. | Disabled |
com.mitv.tvhome.atv | Xiaomi TV Home entegrasyonu; FLauncher sonrasında ihtiyaç kalmadı. | Disabled |
com.android.htmlviewer | Basit HTML görüntüleyici; günlük TV kullanımında gereksiz. | Disabled |
6. Kullanılmayan kullanıcı uygulamalarını gerçekten silme
Burada sistem paketlerinden farklı bir yaklaşım uygulandı. pm list packages -3 altında görünen ve sonradan kurulmuş, artık kullanılmayan uygulamalar adb uninstall ile kaldırıldı. Bu sayede 8 GB’lık cihazda kullanıcı depolaması da geri kazanılıyor.
Kaldırılan örnekler
Kalan kullanıcı uygulamaları
adb uninstall <PACKAGE_NAME>
Not: Bu yöntem yalnızca sonradan yüklenen uygulamalarda kullanıldı. Sistem APK’larında uninstall yapılmadı.
7. Bilerek korunan kritik paketler
Debloat’ın başarısı yalnızca neyi kapattığınız değil, neyi kapatmadığınızla da ilgilidir.
| Paket | Neden korundu? | Durum |
|---|---|---|
com.google.android.gms | Google Play Services; uygulama altyapısı ve kimlik doğrulama. | Korundu |
com.google.android.gsf | Google Services Framework. | Korundu |
com.android.vending | Play Store. | Korundu |
com.android.location.fused | Sistem konum altyapısı; kritik sistem bileşeni olarak bırakıldı. | Korundu |
com.google.android.inputmethod.latin | Ekran klavyesi. | Korundu |
com.android.bluetooth | Bluetooth ve kumanda bağlantıları. | Korundu |
com.google.android.tv.remote.service | Android TV Remote/kumanda servisleri. | Korundu |
com.netflix.ninja | Netflix sistem uygulaması ve sertifikalı playback akışı. | Korundu |
com.google.android.youtube.tv | YouTube. | Korundu |
com.google.android.apps.mediashell | Chromecast built-in / Google Cast tarafı. Telefonlardan medya gönderimi için kritik. | Korundu |
com.mitv.milinkservice | Xiaomi bağlantı/mirroring entegrasyonu olabileceği için risk/getiri oranı düşük görüldü. | Korundu |
com.xiaomi.mitv.updateservice | OTA/system update servisi; ~33 MB PSS görmesine rağmen güvenlik açısından açık bırakıldı. | Korundu |
8. Performans ölçümleri
Final /proc/meminfo
MemTotal: 2034840 kB
MemFree: 179040 kB
MemAvailable: 1077876 kB
Cached: 999312 kBAndroid/Linux boş RAM’i cache olarak kullanır. Bu nedenle yalnızca MemFree değil, özellikle MemAvailable dikkate alınmalıdır.
Launcher dönüş testi
ThisTime: 88–90 ms
TotalTime: 88–90 ms
WaitTime: 112–113 msYouTube’dan HOME intent’i ile FLauncher task’ını öne getirme testi. Launcher zaten RAM’de tutulduğu için geri dönüş yaklaşık 0.1 saniye seviyesindeydi.
Finalde en yüksek PSS kullanan bazı süreçler
SoundCloud ~137 MB
Netflix ~131 MB
Google Play Services ~73 MB
FLauncher ~54 MB
Play Store ~55 MB
Chromecast mediashell ~40 MB
YouTube ~24 MB
Spotify ~22 MB9. Geri alma / rollback
Bir sistem paketini geri açmak:
adb shell pm enable <PACKAGE_NAME>
Stok launcher’ı geri getirmek:
adb shell pm enable com.google.android.tvlauncher
adb shell am start -n com.google.android.tvlauncher/.MainActivity
Bu rehberde kapatılan sistem paketlerini tek komut bloğuyla geri aç
for p in \
com.xiaomi.android.tvsetup.partnercustomizer \
com.google.android.katniss \
com.google.android.onetimeinitializer \
com.android.htmlviewer \
com.google.android.backdrop \
com.google.android.tungsten.setupwraith \
android.autoinstalls.config.xioami.mibox3 \
com.xm.webcontent \
com.mitv.download.service \
tv.alphonso.alphonso_eula \
com.google.android.marvin.talkback \
com.google.android.speech.pumpkin \
com.mitv.tvhome.atv \
com.android.backupconfirm \
com.google.android.tv \
com.amazon.amazonvideo.livingroom \
com.android.printspooler \
com.mitv.videoplayer \
com.android.dreams.basic \
com.google.android.tvrecommendations \
com.google.android.tvlauncher \
com.android.onetimeinitializer \
com.google.android.syncadapters.contacts \
com.google.android.youtube.tvmusic \
com.google.android.tts \
com.google.android.videos \
com.google.android.feedback \
com.google.android.syncadapters.calendar \
com.google.android.tv.bugreportsender \
com.miui.tv.analytics \
com.android.wallpaperbackup \
com.mitv.tvhome.michannel \
com.google.android.play.games; do
adb shell pm enable "$p"
done
10. Güvenlik kuralları
Root yok
Bootloader açma, custom ROM veya root bu işlem için gerekli değil. Sertifikasyon/DRM riskine değmez.
Küçük batch
Paketleri 10’dan küçük gruplarla kapatın; her gruptan sonra kumanda, ses, klavye, Netflix, YouTube ve Cast test edin.
Marka/model özelinde
Paket adları cihazdan cihaza değişir. Bir paketin görevinden emin değilseniz kapatmayın.
Kaynaklar
Başlangıç yaklaşımı: tv.cobanov.dev — Clean up your Android TV. Sayfa; ölçüm alma, disable-user kullanma, küçük batch’lerle ilerleme, alternatif launcher’ı önce kurma ve rollback kaydı tutma prensiplerini öneriyor.
FLauncher: orijinal FLauncher projesi / GitHub fork. Açık kaynak Android TV launcher.
Bu rehber, yukarıdaki kaynakların birebir kopyası değildir; Xiaomi Mi Box S MDZ-22-AB üzerinde gerçek paket listesi ve gerçek test sonuçlarıyla uyarlanmış uygulama notudur.