Android 11'den itibaren klavyeler ve diğer giriş yöntemi düzenleyiciler (IME'ler) otomatik doldurma önerilerini satır içinde, bir öneri şeridinde veya menüde öneriler gösteren sistem yerine benzer bir şekilde görüntüleyebilir. Bu otomatik doldurma önerileri şifre veya kredi kartı bilgileri gibi özel veriler içerebileceği için kullanıcı bir tane seçene kadar öneriler IME'de gizlenir. Bu özellikten yararlanabilmek için IME'leri ve şifre yöneticileri gibi otomatik doldurma hizmetlerini güncelleyin. IME veya otomatik doldurma hizmeti, satır içi otomatik doldurmayı desteklemiyorsa öneriler, Android 11'den önceki sürümlerde olduğu gibi bir menüde gösterilir.
İş Akışı
Bu akışta IME mevcut klavye veya başka bir giriş düzenleyici, öneri sağlayıcı ise otomatik doldurma önerisinin uygun sağlayıcısı anlamına gelir. Giriş alanına ve kullanıcının ayarlarına bağlı olarak öneri sağlayıcı, platform veya bir otomatik doldurma hizmeti olabilir.
Kullanıcı, şifre veya kredi kartı giriş alanı gibi otomatik doldurmayı tetikleyen bir giriş alanına odaklanır.
Platform, satır içi otomatik doldurmayı destekleyip desteklemediklerini görmek için mevcut IME'yi ve uygun öneri sağlayıcıyı sorgular. IME veya öneri sağlayıcı, satır içi otomatik doldurmayı desteklemiyorsa öneri, Android 10 ve önceki sürümlerde olduğu gibi bir menüde gösterilir.
Platform, IME'den bir öneri isteği sağlamasını ister. Bu öneri isteği, görüntülenecek maksimum öneri sayısını belirtir ve ayrıca her öneri için sunum özelliklerini de sağlar. Sunum özellikleri; maksimum boyut, metin boyutu, renkler ve yazı tipi verileri gibi öğeleri belirterek öneri sağlayıcının IME'nin görünümü ve tarzıyla eşleşmesini sağlar.
Platform, öneri sağlayıcıdan istenen sayıda öneri sağlamasını ister. Her öneri, önerinin kullanıcı arayüzünü içeren bir
View
öğesini genişletmek için bir geri çağırma içerir.Platform, önerilerin hazır olduğunu IME'ye bildirir. IME, her bir önerinin
View
değerini artırmak için geri çağırma yöntemini çağırarak önerileri görüntüler. Kullanıcının özel bilgilerini korumak için IME, bu aşamada önerilerin ne olduğunu görmez.Kullanıcı önerilerden birini seçerse IME, kullanıcı bir sistem menüsünden öneri seçerse aynı şekilde bilgilendirilir.
Aşağıdaki bölümlerde, IME veya otomatik doldurma hizmetinizi satır içi otomatik doldurmayı destekleyecek şekilde nasıl yapılandıracağınız açıklanmaktadır.
IME'leri satır içi otomatik doldurmayı destekleyecek şekilde yapılandırma
Bu bölümde, satır içi otomatik doldurmayı destekleyecek şekilde IME'nizi nasıl yapılandıracağınız açıklanmaktadır. IME'niz satır içi otomatik doldurmayı desteklemiyorsa platform, varsayılan olarak bir menüde otomatik doldurma önerilerini gösterir.
IME'niz supportsInlinedSuggestions
özelliğini true
olarak ayarlamalıdır:
<input-method
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsInlineSuggestions="true"/>
Platformda otomatik doldurma önerisi gerektiğinde IME'nizin InputMethodService.onCreateInlineSuggestionsRequest()
yöntemini çağırır. Bu yöntemi uygulamanız gerekir. Aşağıdakileri belirten bir InlineSuggestionsRequest
döndürün:
- IME'nizin kaç öneri istediği.
Her öneri için önerinin nasıl sunulması gerektiğini tanımlayan bir
InlinePresentationSpec
.
Platformda öneriler olduğunda, önerileri içeren bir InlineSuggestionsResponse
ileterek IME'nizin onInlineSuggestionsResponse()
yöntemini çağırır. Bu yöntemi uygulamanız gerekir. Uygulamanızda, öneri listesini almak için InlineSuggestionsResponse.getInlineSuggestions()
numaralı telefonu arayın ve ardından InlineSuggestion.inflate()
yöntemini çağırarak her bir öneriyi artırın.
Satır içi otomatik doldurmayı desteklemek için otomatik doldurma hizmetlerini yapılandırın
Bu bölümde, satır içi otomatik doldurmayı destekleyecek şekilde otomatik doldurma hizmetinizi nasıl yapılandıracağınız açıklanmaktadır. Uygulamanız satır içi otomatik doldurmayı desteklemiyorsa platform varsayılan olarak otomatik doldurma önerilerini bir menüde gösterir.
Otomatik doldurma hizmetiniz supportsInlinedSuggestions
özelliğini true
olarak ayarlamalıdır:
<autofill-service
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsInlineSuggestions="true"/>
IME için otomatik doldurma önerileri gerektiğinde platform, Android 11'in altındaki sürümlerde olduğu gibi otomatik doldurma hizmetinizin onFillRequest()
yöntemini çağırır. Ancak hizmetiniz, IME tarafından oluşturulan InlineSuggestionsRequest
öğesini almak için iletilen FillRequest
nesnesinin getInlineSuggestionsRequest()
yöntemini çağırmalıdır. InlineSuggestionsRequest
, kaç satır içi önerinin gerekli olduğunu ve her bir önerinin nasıl sunulması gerektiğini belirtir. IME satır içi önerileri desteklemiyorsa yöntem null
değerini döndürür.
Otomatik doldurma hizmetiniz, InlineSuggestionsRequest
içinde istenen maksimum sayıya kadar InlinePresentation
nesne oluşturur.
Sunularınız, InlineSuggestionsRequest
ile belirtilen boyut kısıtlamalarına uymalıdır. Önerilerinizi IME'ye döndürmek üzere her öneri için bir kez Dataset.Builder.setValue()
numarasını arayın. Android 11, satır içi önerileri desteklemek için Dataset.Builder.setValue()
sürümlerini sunar.