Home> Blog

Android Kiosk Kurulumu: Ayarlar Menüsüne Cihaz Sahibi Tarafından Engellendiğinizde Ne Yapmalısınız

2026-09-11 09:09:05
Android Kiosk Kurulumu: Ayarlar Menüsüne Cihaz Sahibi Tarafından Engellendiğinizde Ne Yapmalısınız

K 10,1 inç Android tablet aDB, özel bir başlatıcı ve Cihaz Sahibi ile kiosk kullanımı için yapılandırılmıştı. Yeniden başlatıldıktan sonra uygulama beklenen şekilde başladı, ancak cihaz artık normal Android Ayarlar arayüzüne erişemiyordu.

Bu durum, kiosk dağıtımında yaygın bir zorluk yarattı: sistem gezinmesi ve cihaz yönetimi denetimleri kısıtlandıktan sonra tablet daha fazla test için nasıl kurtarılabilir? Ayrıca uygulamanın Wi-Fi veya diğer sistem işlevlerini açması gerekiyorsa hangi Android Intent’leri hâlâ kullanılabilir?

Müşteri, önce sistem kullanıcı arayüzü davranışını değiştirmek için ADB komutlarını kullandı:

adb shell settings put system hide_navbar 1

adb shell settings put system statusbar_disp 1

adb shell settings put system swipe_show_nav_bar 0

adb shell settings put system power_button_show 0

Uygulama ardından varsayılan Ana ekran olarak ayarlandı; sonrasında uygulama Cihaz Sahibi olarak yapılandırıldı gerekli cihaz yönetimi işlevlerini etkinleştirmek için.

Yeniden başlatmadan sonra Android kiosk tableti uygulamaya, beklenildiği gibi otomatik olarak girdi. Ancak müşteri, Android Ayarları'na veya diğer sistem işlevlerine erişmek amacıyla uygulamanın ana ekranından çıkmakta artık başarısız oldu. Uygulamaya entegre edilen Ayarlar ve Wi-Fi düğmeleri de ilgili sistem sayfalarını açmayı durdurdu.

Acil soru yalnızca uygulamadan nasıl çıkılacağı değildi. Müşteri, daha fazla test için Android tablet cihazı güvenilir bir şekilde kurtarmak istiyordu ve ayrıca uygulamalarının hangi sistem Intent'lerini kullanabileceğini anlamak istiyordu.

Neden Android Tabletine Erişim Zorlaştı

Sorun, aynı anda uygulanan birkaç katmanlı cihaz kontrolünden kaynaklandı.

Özel başlatıcı, Ana ekran olarak hangi uygulamanın görüneceğini belirlerken Cihaz Sahibi, uygulamaya cihaz ilkesi üzerinde çok daha kapsamlı bir kontrol yetkisi verir. Android’in özel cihazlar için belgeleri, kiosk ve yönetilen cihaz dağıtımları gibi yapılandırmaları destekler; bunlara varsayılan Ana uygulamayı denetlemek ve sistem işlevlerine erişimi kısıtlamak da dahildir.

ADB komutları, sistem kullanıcı arayüzü davranışını değiştirerek başka bir katman ekler. Bu ayarlar, evrensel Android API’leri yerine cihaza veya firmware’e özgüdür; bu nedenle tam etkileri, tablet firmware’inin bunları nasıl uyguladığına bağlıdır.

Bu, bir Kiosk cihazı olarak kullanılan Android tabletinin başlatıcı, Cihaz Sahibi yapılandırması, sistem kullanıcı arayüzü kısıtlamaları ve uygulama gezinmesi birlikte değiştirildiğinde kurtarılması zor hale gelebileceği anlamına gelir.

Uygulamanın Ayarlar veya Wi-Fi düğmesinin artık çalışmaması, Intent'in kendisinin yanlış olduğu anlamına gelmez. Hedef Ayarlar Etkinliği, geçerli cihaz yapılandırması altında kullanılamaz, kısıtlanmış veya başka nedenlerle erişilemez olabilir. Android ayrıca bir Intent'in başlatılmadan önce çözülebilir olup olmadığını kontrol etmenizi önerir.

2开发场景图.png

Kilitlemiş Bir Android Kiosk Tablet'i Kurtarma Yolları

Uygulama zaten Cihaz Sahibi olarak yapılandırıldıysa, öncelikle yazılım tabanlı kurtarma yöntemleri değerlendirilmelidir.

Android'in DevicePolicyManager sınıfı, Cihaz Sahibi tarafından kullanılabilen cihaz yönetim işlevleri sağlar. Android sürümüne ve uygulamanın yapılandırmasına bağlı olarak, bir Cihaz Sahibi uygulaması, tablet'i test amacıyla temiz bir duruma getirmek için uygun cihaz silme mekanizmasını kullanabilir. wipeData() kullanıcı verilerini silmek için yerleşik API'dir; daha yeni Android sürümleri ise ek cihaz silme işlevselliği sunar.

Kullanımdan kaldırılmış clearDeviceOwnerApp() yöntem, genel üretim kurtarma yöntemi olarak değerlendirilmemelidir. Android, bu yöntemi test odaklı bir API olarak belgeler ve Cihaz Sahibi ilişkisini kaldırmak için normal yolu olarak fabrika ayarlarına sıfırlamayı önerir.

ADB aynı zamanda cihaz ilkesi yönetimi komutları sağlar; ancak bunların bazı kısıtlamaları vardır. Örneğin, adb shell dpm remove-active-admin cihaz Sahibi'ni kaldırmak için evrensel bir yöntem değildir; Android'in ADB belgeleri, uygulamanın testOnly bildirimini gerektiren koşulları belirtir.

Yazılım kurtarması, uygulamanın gerekli işlemi gerçekleştirememesi nedeniyle kullanılamıyorsa kalan yol, donanım tabanlı fabrika ayarlarına sıfırlama veya Android Kurtarma işlemidir. .

3流程图.png

Tam tuş kombinasyonu, başka bir Android tablet modelinden çıkarılamaz. Kurtarma davranışı, tabletin firmware'i ve donanım uygulamasına bağlıdır. Özel bir Android tablet projesi için uygun kurtarma işlemi, dağıtım öncesinde gerçek model ve firmware'e göre doğrulanmalıdır.

Bu tür Android kiosk tableti , kurtarma yöntemi tanımlanmış olması, sistem düzeyi yapılandırmanın normal kullanıcı gezintisini kasıtlı olarak kaldırabildiği entegrasyon testleri sırasında özellikle yararlıdır.

Bir Android Tablet Üzerinde Ayarlar Amaçları ve Sistem İşlevlerinin Test Edilmesi

Müşterinin ikinci sorusu, uygulamanın Ayarlar ve Wi-Fi gibi sistem işlevlerini doğrudan başlatıp başlatamayacağıydı.

Android, bu işlevler için standart Ayarlar eylemleri sağlar. Örneğin:

İşlev

Standart Android Intent

Ana Ayarlar

Settings.ACTION_SETTINGS

Wi-Fi Ayarları

Settings.ACTION_WIFI_SETTINGS

Kablosuz Ayarlar

Ayarlar.ACTION_WIRELESS_SETTINGS

Bluetooth Ayarları

Ayarlar.ACTION_BLUETOOTH_SETTINGS

Ekran Ayarları

Ayarlar.ACTION_DISPLAY_SETTINGS

Konum Ayarları

Ayarlar.ACTION_LOCATION_SOURCE_SETTINGS

Ses Ayarları

Ayarlar.ACTION_SOUND_SETTINGS

Güvenlik Ayarları

Ayarlar.ACTION_SECURITY_SETTINGS

Uygulama Ayarları

Ayarlar.ACTION_APPLICATION_SETTINGS

Belirli Uygulama Ayarları

Ayarlar.ACTION_APPLICATION_DETAILS_SETTINGS

 

Bunlar, belirli bir Android tablet üreticisine özel arayüzlerden ziyade standart Android Ayarları eylemleridir ancak bir Intent'in varlığı, bu Intent'in her cihazda veya her kiosk yapılandırmasında başarıyla açılacağını garanti etmez. Android, başlatmadan önce Intent'i resolveActivity() ile kontrol etmenizi önerir.

Sistemle bütünleşmiş bir Android tablet için Intent testleri, dolayısıyla dağıtım amacıyla kullanılan gerçek firmware ve Android sürümü üzerinde yapılmalıdır. Test, yalnızca Intent'in varlığını değil, aynı zamanda Cihaz Sahibi, başlatıcı ve sistem kullanıcı arayüzü kısıtlamaları uygulandıktan sonra ilgili Activity'nin erişilebilir olup olmadığını da doğrulamalıdır.

4流程图(1).png

Eğer bir Android kiosk tableti veya sistem entegrasyonu projesi üzerinde çalışıyorsanız ve Cihaz Sahibi (Device Owner) kurtarma, Ayarlar Intent'leri veya ilgili yapılandırma sorunları konusunda yardım gerekiyorsa, lütfen tablet modelinizi ve Android sürümünüzü belirterek bize ulaşın. Mevcut teknik destek ve özelleştirme seçenekleri hakkında görüşebiliriz.

 

Aynı ilke diğer sistem işlevlerine de uygulanır. Standart bir Android API'si mevcut olabilir; ancak özelleştirilmiş bir tabletin gerçek davranışı, Android sürümüne, firmware yapılandırmasına ve cihaz yönetimi ilkelerine bağlıdır.

Uyanma Talepleri (Wake Requests) Hakkında Ne Denebilir?

Müşterinin ‘uyanma talepleri’ (wake requests) ile ilgili sorusu, bir Ayarlar sayfasını başlatmaktan biraz farklıdır.

Intent.ACTION_SCREEN_ON ekranın artık etkileşimli hale geldiğini belirten bir sistem yayınıdır. Bu, korumalı bir sistem yayınıdır; bu nedenle bir uygulama, tabletin uyanmasını sağlamak için basitçe gönderebileceği sıradan bir Intent olarak değerlendirmemelidir.

Gereksinim şu şekildeyse: ekranı uyandırmak, ekranı açık tutmak veya ekranın açılma davranışını kontrol etmek , uygun mekanizma tam olarak hangi uygulama gereksinimine bağlıdır. Android, bu tür senaryolar için güç yönetimi ve pencere/etkinlik API'leri sunar; bunlara PowerManager ve gerekli olduğu durumlarda uyandırma kilidi (wake-lock) işlevselliği de dahildir.

Bu ayrım, bir Android kiosk tableti için uygulama geliştirilirken önemlidir. "Bir sistem işlevini başlatmak" ile "cihazın güç durumunu kontrol etmek" farklı sistem işlemleridir ve farklı API'ler aracılığıyla ele alınmalıdır.

5具体场景ui图.png

Android Tablet Entegrasyonu İçin Teknik Destek

Bu durum ayrıca kiosk dağıtımının yalnızca temel Android tablet donanımı yapılandırmasından daha fazlasını gerektirebileceğini gösterir.

Bir tablet özel bir uygulamaya, POS sistemine, kioska, endüstriyel sisteme ya da başka bir yönetilen cihaza entegre edildiğinde yazılım yapılandırması aynı anda başlatıcıyı (launcher), Cihaz Sahibini (Device Owner), sistem kullanıcı arayüzünü (system UI), uygulama izinlerini, Ayarlar Yönlendirmelerini (Settings Intents) ve kurtarma davranışını (recovery behavior) içerebilir.

Şu projeler için özelleştirilmiş Android tablet yapılandırmalar, bu gereksinimler son test aşamasında ayrı sorunlar olarak değil, donanım ve Android sistem yapılandırmasıyla birlikte değerlendirilmelidir.

Uygun çözüm, Android sürümüne, tablet firmware'ine, uygulama yapılandırmasına ve sistem entegratörünün kontrol etmesi gereken işlevlere bağlıdır. Teknik belgeler, mevcut sistem arayüzleri, desteklenen Intent'ler, izinler ve cihaza özel sınırlamalar çerçevesinde de hazırlanabilir.

Bir Android tablet kiosk dağıtımı veya sistem entegrasyonu için test ediyorsanız ve Cihaz Sahibi, özel başlatıcılar, kiosk modu, Ayarlar Intent'leri, sistem kullanıcı arayüzü kısıtlamaları veya cihaz kurtarma işlemleriyle ilgili benzer sorunlarla karşılaşıyorsanız , Lütfen bİZİMLE İLETİŞİME GEÇİN teknik destek için .

Tablet modelinizi, Android sürümünüzü, dağıtım yapılandırmanızı ve uygulamaya çalıştığınız belirli işlevi sağlayabilirsiniz. Ardından mevcut Android tablet özelleştirme ve teknik destek projeleriniz için seçenekler.