Android O'nun Otomatik Doldurma Çerçevesi Nihayet Parola Yöneticilerinde Uzun Süredir Devam Eden Gecikme Sorununu Çözecek

Android O'daki yeni Otomatik Doldurma Çerçevesi, şifre yöneticilerinin Erişilebilirlik Hizmetleriyle ilgili uzun süredir devam eden gecikme sorununu çözecek.

Google'ın bunu yayınlamasının üzerinden bir ay geçti bile. ilk Android O Geliştirici Önizlemesi (zaman kesinlikle hızla akıp gidiyor!) ve Android'in her yeni sürümünde olduğu gibi, incelenecek çok şey var. yayınladık bol miktarda makale Android O hakkında zaten konuşuyorum ama hak ettiği ilgiyi görmediğini düşündüğüm bir özellik var: Otomatik Doldurma Çerçevesi.

Android O'da Otomatik Doldurma

Şifre yöneticileri bugünlerde bir düzine kuruş (gerçi biz açık kaynaklı KeePass'ın kısmi), ancak Google'ın gerçek anlamda resmi olarak şifre yöneticilerini desteklediği tek yer Android O'dur. Android O ile üçüncü taraf uygulamalar, yeni Otomatik Doldurma Çerçevesi aracılığıyla uygulamalarla iletişim kuran otomatik doldurma hizmetinin kapsamını doldurabilir. Standart kullanan uygulamalar Görüş Öğeler kutudan çıktığı haliyle Otomatik Doldurma Çerçevesi ile birlikte çalışacaktır ancak geliştiricilerin uygulayabileceği ek adımlar da vardır.

otomatik doldurma için optimize et uygulamanın özel Görünümlerinden herhangi birinin otomatik olarak doldurulabilmesini sağlamak için.

Otomatik doldurulabilir bir Görünüm odak noktasına geldiğinde Otomatik Doldurma Çerçevesi bir otomatik doldurma isteği başlatır. Otomatik doldurma hizmeti, kullanıcının daha sonra seçebileceği belirli Otomatik Doldurma Veri Kümelerini (kullanıcı adı, şifre, adres, kredi kartı numaraları vb.) geri göndererek yanıt verir. Otomatik doldurma hizmeti, kullanıcı tarafından Ayarlar --> Uygulamalar ve Bildirimler --> Varsayılan Uygulamalar --> Otomatik Doldurma uygulaması bölümünde belirtilir.

Android O'da Otomatik Doldurma Uygulaması Kredi: Son Geçiş.

Yukarıdaki yeni Otomatik Doldurma Çerçevesi'nin açıklaması, hem istekte bulunan uygulamanın hem de otomatik doldurma hizmetinin tarafında olup bitenlerin kısa bir özetidir. Burada anlamanız için en önemli şey, Android O'da otomatik doldurmanın nasıl çalıştığının kesin ayrıntıları değil, şifre yöneticisi uygulamaları artık bir Görünümün ne zaman otomatik olarak doldurulabileceğini tespit edemiyor.


Önerilen Kaynaklar: AgileBits, Android O'nun Otomatik Doldurma Çerçevesinin nasıl görüneceğini gösteriyor


Android O'dan önce otomatik doldurma

Bunu, Android O'dan önceki otomatik doldurmanın çalışma şekliyle karşılaştırın. Parola yöneticilerinin bir Görünümün ne zaman otomatik olarak doldurulabileceğini tespit etmek için herhangi bir resmi yöntemi bulunmadan önce, her biri Uygulamanın, otomatik doldurulabilir görünümleri bulmak amacıyla mevcut Görünümü tarayacak bir Erişilebilirlik Hizmeti uygulaması gerekiyordu. alanlar.

Ancak Erişilebilirlik Hizmetinin kullanımı önemli bir gecikmeye neden olur belirli koşullar altında. Tipik şifre yöneticinizin Erişilebilirlik Hizmetiyle ilgili gecikme o kadar belirgindir ki LastPass gibi popüler hizmetler bile destek sayfaları konuyla ilgili yukarı. Bu destek sayfaları genellikle size, bunların neden olduğu aşırı gecikmeyle başa çıkmak için tek başvurabileceğiniz yer olduğunu söyler. Erişilebilirlik Hizmeti, Erişilebilirlik Hizmetini devre dışı bırakacak veya kendi özel girişlerini kullanmaya geçecektir. yöntem. Her iki durumda da her türlü otomatik doldurma özelliğini kaybedersiniz.

Peki neden LastPass'ın Erişilebilirlik Hizmeti veya başka bir şifre yöneticisinin Erişilebilirlik Hizmeti tam olarak bu kadar çok gecikmeye neden oluyor? Bunun nedeni, bu şifre yöneticilerinin giriş alanlarını tespit etmek için Erişilebilirlik Hizmetlerini kullanmak zorunda olmalarıdır. Erişilebilirlik Hizmeti Öznitellikler bir şekilde tanımlanır XML kaynak dosyası APK içinde, böylece APK dosyasını kaynak koda dönüştürerek Hizmetin nasıl çalıştığını görebiliriz.

LastPass APK'sının derlenmesinden alınan kaynak dosyası aşağıdadır:


"@string/accessibility_service_description"
android: accessibilityEventTypes="typeViewFocused|typeWindowContentChanged"
android: accessibilityFeedbackType="feedbackGeneric"
android: notificationTimeout="200"
android: accessibilityFlags="flagReportViewIds"
android: canRetrieveWindowContent="true"
android: canRequestEnhancedWebAccessibility="true"
xmlns: andro />

Buradan şu bilgileri toplayabiliriz: LastPass'ın Erişilebilirlik Hizmeti, izlenmesi için iki Etkinlik türü talep eder - TYPE_VIEW_FOCUSED ve TYPE_WINDOW_CONTENT_CHANGED. Bunu yapar çünkü bir uygulamanın/web sayfasının içeriğinin ne zaman değiştiğini veya odaklandığını bilmesi gerekir ve ardından herhangi bir şifre giriş alanını aramak için mevcut pencere içeriğini alır. Ancak hizmet bunu son derece sık gerçekleşen iki Erişilebilirlik Etkinliğinde sürekli olarak yaptığından, gecikmeye neden olur. Erişilebilirlik Hizmetlerinin nasıl gecikmeye neden olabileceğine dair daha derinlemesine bir tartışma için, konuyla ilgili önceki makaleme başvurabilirsiniz.


Önerilen Kaynaklar: "Amaçlandığı Gibi Çalışmak" - Android'in Erişilebilirlik Gecikmesine İlişkin Bir Araştırma


Android O Bir Taşla İki Kuş Öldürdü

Android O'dan önce, şifre yöneticisi geliştiricilerinin bu gecikmeyi azaltmak için yapabileceği pek bir şey yoktu. Bunun nedeni, parola yöneticilerinin, Erişilebilirlik Hizmetinin bunları sürekli olarak izlemesine izin vermeden otomatik olarak doldurulabilir bir giriş alanının ekranda ne zaman göründüğünü bilmelerinin mümkün olmamasıydı. Ancak Android O'daki yeni Otomatik Doldurma Çerçevesi sayesinde bu şifre yöneticileri artık Erişilebilirlik Hizmetlerini kullanımdan kaldırabilirler. Bunun yerine, veri girişine ihtiyaç duyan uygulamalar, Otomatik Doldurma Çerçevesinden, daha sonra verileri gönderecek olan otomatik doldurma hizmetini aramasını isteyecektir. Bu yeni çerçeve sayesinde, artık bir parolaya güvenmek zorunda kalmayacakları için parola girişi kullanıcılar için çok daha kolay hale gelecek. ek giriş yöntemi, ancak şifre yöneticilerinin Erişilebilirlik Hizmetlerini etkinleştirmeyle ilgili gecikme, geçmiş.

Bazılarınız için bu gerçeğin çığır açıcı olmayabileceğini biliyorum, ancak Erişilebilirlik Hizmeti hakkındaki tartışmanın bu kadar sessiz kalması nedeniyle bu konunun yeniden alevlenmeye değer olabileceğini düşündüm. Bu hafta sonu sadece düşünmek için biraz yiyecek!


Android O'nun yeni Otomatik Doldurma Çerçevesi hakkında ne düşünüyorsunuz? Aşağıdaki yorumlarda bize bildirin!