Telefon hesabı önerisi

Android 10'da telefon hesabı önerisi hizmeti, kullanıcılar arama yaparken telefon hesabı önerilerinin gösterilmesine olanak tanır. Örneğin, birden fazla SIM kartı olan ve ağ içi aramalar için daha düşük ücretler sunan bir cihazı olan kullanıcılar için bu hizmet önce aranan tarafın operatörünü tanımlar, ardından aranan tarafın operatörüyle aynı ağdaki SIM'in kullanılmasını önerir.

Telefon hesabı önerisi hizmeti isteğe bağlıdır ve Android 10 veya sonraki sürümlerin yüklü olduğu cihazlarda kullanılabilir.

Uygulama

Telefon hesabı önerilerini uygulamak için /system/priv-app/ konumundaki bir uygulamada bir PhoneAccountSuggestionService hizmetini uygulayın. Birden fazla PhoneAccountSuggestionService uygulanırsa hizmet sorgulanmaz. Hizmet, android.Manifest.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE iznini beyan etmelidir.

Bir kullanıcı, aranan taraf için varsayılan giden telefon hesabı veya tercih edilen telefon hesabı ayarlanmamış bir giden arama yaptığında telekom hizmeti, hesaplarla ilgili bilgi toplamak için PhoneAccountSuggestionService ile bağlanır, onAccountSuggestionRequest(String number) çağrılır ve giden arama işlemi askıya alınır.

PhoneAccountSuggestionService, onAccountSuggestionRequest(String number) tarafından döndürülen numarayla suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions)'ı aramalıdır.

suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions) çağrıldığında telekom hizmeti, önerilen telefon hesaplarının listesini döndürür. Ardından çevirici, kullanıcının arama yapmak için seçebileceği önerilen telefon hesaplarının listesini göstermelidir.

PhoneAccountSuggestion

Öneri yapmak için PhoneAccountSuggestion sınıfını kullanın. Örneğin, hizmet aranan kişinin cihazdaki SIM'lerden biriyle aynı operatörde olduğunu belirlerse hizmet, telefon hesabını REASON_INTRA_CARRIER ile işaretlemelidir. Bu bilgiler daha sonra çeviricide kullanıcıya iletilebilir.

Örneğin, kullanıcının cihazı bir iş Google Hesabı'ndaki tüm kişiler için iş SIM'ini kullanacak şekilde yapılandırdığı bir durumda, hizmet telefon hesabını REASON_USER_SET ile işaretlemeli ve arama uygulamasının seçim iletişim kutusunu atlayıp aramayı otomatik olarak telefon hesabını kullanarak yapmasına izin vermek için shouldAutoSelect değerini doğru olarak ayarlamalıdır.

Diğer öneriler hakkında bilgi edinmek için PhoneAccountSuggestion başlıklı makaleyi inceleyin.

Dialer

Arama STATE_SELECT_PHONE_ACCOUNT durumuna girdiğinde çevirici, EXTRA_SUGGESTED_PHONE_ACCOUNTS işlemini gerçekleştirmek için PhoneAccountSuggestion bilgilerini kullanmalıdır.

Hizmeti devre dışı bırakma

Uygulamanızı belirli operatörlere göre özelleştirmek için setComponentEnabledSetting kullanarak hizmeti etkinleştirebilir veya devre dışı bırakabilirsiniz. Devre dışı bırakılırsa hizmete sorgu gönderilmez.

Sistem kullanıcı arayüzü uygulama

Uygulamanıza bağlı olarak sistem kullanıcı arayüzünde değişiklik yapmanız gerekebilir. Örneğin, kullanıcıların belirli bir kişiye yapılan tüm aramaların belirli bir telefon hesabından yapılacağını belirtmesine izin vermek için cihazda özelleştirilmiş bir kurulum akışı ve ayarlar kullanıcı arayüzü uygulamanız gerekir.

Doğrulama

Uygulamanızı doğrulamak için aşağıdaki CTS testlerini çalıştırın: