AdSelectionManager
public
class
AdSelectionManager
extends Object
java.lang.Object | |
→ Yönergeler | android.adservices.adselection.AdSelectionManager |
AdSelection Manager, reklam seçimi işlemlerini çalıştırmanın yanı sıra gösterimleri raporlamak üzere uygulama ve reklam SDK'ları için API'ler sağlar.
Özet
Herkese açık yöntemler | |
---|---|
static
AdSelectionManager
|
get(Context context)
AdSelectionManager örneğinin oluşturulması için fabrika yöntemi. |
void
|
getAdSelectionData(GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver)
Cihazdan özel kitle verileri toplar. |
TestAdSelectionManager
|
getTestAdSelectionManager()
|
void
|
persistAdSelectionResult(PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Sunucu tarafından yapılan reklam seçimi sonuçlarının kalıcı olmasını sağlar. |
void
|
reportEvent(ReportEventRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
|
void
|
reportImpression(ReportImpressionRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
|
void
|
selectAds(AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Daha önce çalıştırılan reklam seçimlerinin sonuçlarından bir reklam seçer. |
void
|
selectAds(AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Arayan uygulama için bir yeniden pazarlama reklamı seçmek üzere cihazda reklam seçme işlemini yürütür. |
void
|
updateAdCounterHistogram(UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<Object, Exception> outcomeReceiver)
Daha önce |
Devralınan yöntemler | |
---|---|
Herkese açık yöntemler
get
public static AdSelectionManager get (Context context)
AdSelectionManager örneğinin oluşturulması için fabrika yöntemi.
Parametreler | |
---|---|
context |
Context : Kullanılacak Context değeri, null olamaz. |
İlerlemeler | |
---|---|
AdSelectionManager |
AdSelectionManager örneği
Bu değer null olamaz. |
AdSelectionData'yı alma
public void getAdSelectionData (GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver)
Cihazdan özel kitle verileri toplar. Reklam seçimi için açık artırma sunucularına gönderilecek sıkıştırılmış ve şifrelenmiş bir blob döndürür. Daha fazla bilgi için Teklif Verme ve Açık Artırma Hizmetlerini Açıklayıcı sayfasını ziyaret edin.
Özel kitle reklamlarının toplanmaya uygun olması için bir ad_render_id
içermesi gerekir.
Bu API tarafından oluşturulan blob ile sunucu tarafında çalıştırılan reklam seçimi sonuçlarının nasıl işleneceğini öğrenmek için AdSelectionManager#persistAdSelectionResult
adresine bakın.
Çıkış, alıcı tarafından iletilir. Alıcı, başarılı bir çalıştırma için GetAdSelectionDataOutcome
döndürür veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
IllegalArgumentException
hatalıysa API'nin reklam seçimini çalıştırmak için aldığı geçersiz giriş bağımsız değişkeninden kaynaklanır.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
TimeoutException
devre dışı bırakılırsa kazanan Reklamı bulmak için teklif verme, puanlama veya genel seçim işlemi sırasında zaman aşımı yaşanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
request |
GetAdSelectionDataRequest : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz.
Geri çağırma ve işleyici etkinlikleri, hangi iş parçacığının kullanıldığını kontrol etmek için kolay bir yol sağlayan bu Executor aracılığıyla gönderilir. Etkinlikleri uygulamanızın ana iş parçacığı üzerinden göndermek için Context.getMainExecutor() kullanabilirsiniz.
Aksi takdirde, uygun iş parçacığına gönderim yapan bir Executor sağlayın. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
getTestAdSelectionManager
public TestAdSelectionManager getTestAdSelectionManager ()
İlerlemeler | |
---|---|
TestAdSelectionManager |
Bu değer null olamaz. |
kalıcıAdSelectionResult
public void persistAdSelectionResult (PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Sunucu tarafından yapılan reklam seçimi sonuçlarının kalıcı olmasını sağlar. Daha fazla bilgi için Teklif ve Açık Artırma Hizmetlerini Açıklama başlıklı makaleyi inceleyin.
Sunucu tarafında bir reklam seçimi çalıştırmak için şifrelenmiş blob oluşturma hakkında bilgi edinmek için AdSelectionManager#getAdSelectionData
bölümüne bakın.
Çıkış, alıcı tarafından iletilir. Alıcı, başarılı bir çalıştırma için AdSelectionOutcome
döndürür veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
IllegalArgumentException
hatalıysa API'nin reklam seçimini çalıştırmak için aldığı geçersiz giriş bağımsız değişkeninden kaynaklanır.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
TimeoutException
devre dışı bırakılırsa kazanan Reklamı bulmak için teklif verme, puanlama veya genel seçim işlemi sırasında zaman aşımı yaşanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
request |
PersistAdSelectionResultRequest : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz.
Geri çağırma ve işleyici etkinlikleri, hangi iş parçacığının kullanıldığını kontrol etmek için kolay bir yol sağlayan bu Executor aracılığıyla gönderilir. Etkinlikleri uygulamanızın ana iş parçacığı üzerinden göndermek için Context.getMainExecutor() kullanabilirsiniz.
Aksi takdirde, uygun iş parçacığına gönderim yapan bir Executor sağlayın. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
raporEtkinlik
public void reportEvent (ReportEventRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
adSelectionId
tarafından tanımlanan reklam seçimi tarafından seçilen reklam için raporlanacak yeni bir reklam etkinliği olduğunu hizmete bildirir. Reklam etkinliği, belirtilen adSelectionId
ile ilişkili bir reklamın başına gelen her türlü olaydır. Reklam etkinliğinin ne zaman raporlanacağına dair herhangi bir garanti verilmez. Etkinlik raporlamasında gecikme yaşanabilir ve raporlar toplu olarak işlenebilir.
Hizmet, ReportEventRequest#getKey()
kullanıldığında registerAdBeacon
içinde kayıtlı reportingUri
bilgisini getirir. registerAdBeacon
hakkında daha fazla bilgi için reportImpression(ReportImpressionRequest, Executor, OutcomeReceiver)
dokümanlarına bakın. Ardından hizmet, POST isteğinin istek gövdesine ReportEventRequest#getData()
ekleyerek isteği gönderir. POST isteğinin gövdesinde text/plain
content-type
öğesi bulunur ve veriler charset=UTF-8
içinde aktarılır.
Çıkış, alıcı tarafından iletilir. Alıcı, başarılı bir çalıştırma için boş bir Object
döndürür veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
IllegalArgumentException
hatalıysa API'nin reklam etkinliğini bildirmek için aldığı geçersiz giriş bağımsız değişkeninden kaynaklanır.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
Etkinlikler, en iyi çaba girişimi olarak en fazla bir kez raporlanır.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
request |
ReportEventRequest : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
raporGösterimi
public void reportImpression (ReportImpressionRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
adSelectionId
tarafından tanımlanan reklam seçimi tarafından seçilen reklam için raporlanacak yeni bir gösterim olduğunu hizmete bildirir. Gösterimin ne zaman raporlanacağına dair bir garanti yoktur. Gösterim raporlaması gecikebilir ve raporlar toplu olarak işlenebilir.
Hizmet, kazanan satıcı raporlama URL'sini hesaplamak için satıcının JavaScript mantığını ReportImpressionRequest.getAdSelectionConfig()
adresinde bulunan AdSelectionConfig#getDecisionLogicUri()
parametresinden alır. Ardından hizmet, satıcı JS'sinde bulunan reportResult
adlı işlevlerden birini yürüterek cihaz üzerinde sinyaller ve ReportImpressionRequest#getAdSelectionConfig()
ile giriş parametreleri sağlar.
reportResult
işlevinin işlev tanımı şu şekildedir:
function reportResult(ad_selection_config, render_url, bid, contextual_signals) {
return { 'status': status, 'results': {'signals_for_buyer': signals_for_buyer,
'reporting_url': reporting_url } }; }
Hizmet, kazanan alıcı raporlama URL'sini hesaplamak için kazanan alıcının CustomAudience.getBiddingLogicUri()
JavaScript mantığını getirir. Ardından hizmet, alıcı JS'sinde bulunan reportWin
adlı işlevlerden birini yürütür. Bu işlev, giriş parametreleri olarak cihaz üzerinde sinyaller, reportResult
ile hesaplanan signals_for_buyer
ve ReportImpressionRequest#getAdSelectionConfig()
öğesindeki belirli alanları sağlar.
reportWin
işlevinin işlev tanımı şu şekildedir:
function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer,
contextual_signals, custom_audience_reporting_signals) { return {'status': 0, 'results':
{'reporting_url': reporting_url } }; }
Ayrıca, alıcılar ve satıcılar belirli reklam etkinlikleriyle ilgili rapor almak için kaydolabilir. Bunu yapmak amacıyla alıcılar ve satıcılar için sırasıyla reportWin
ve reportResult
içinde platform tarafından sağlanan registerAdBeacon
işlevini çağırabilirler.
registerBeacon
işlevinin işlev tanımı şu şekildedir:
function registerAdBeacon(beacons)
(burada beacons
, dize çiftlerine yönelik dizenin bir diktesidir)
Bir alıcının/satıcının raporlarıyla ilgilendiği her reklam etkinliği için beacons
bölümüne bir event_key
: event_reporting_uri
çifti ekler. Burada event_key
, söz konusu etkinliğin tanımlayıcısıdır. SDK, reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
yöntemini çağırdığında bu event_key
, ReportEventRequest#getKey()
ile eşleşmelidir. Ayrıca, her event_reporting_uri
düzgün bir şekilde Uri
olarak ayrıştırılmalıdır. Bu, SDK reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
yöntemini çağırdığında bildirilen Uri
olacaktır.
Alıcı/satıcı, etkinlik almak istediği tüm eşlemeleri eklediğinde registerAdBeacon(beacons)
yöntemini çağırabilir. Burada beacons
, çiftleri eklediği komutun adıdır.
registerAdBeacon
şu durumlarda TypeError
atar:
registerAdBeacon
birden fazla kez çağrılıyor. reportWin/reportResult içinde bu hata yakalanırsa orijinal eşleme grubu kaydedilir.registerAdBeacon
, tam olarak 1 dikte bağımsız değişkenine sahip değil.- 1 dikt bağımsız değişkeninin içeriği tüm
String: String
eşlemelerine ait değil.
Çıkış, başarılı bir çalıştırma için boş bir Object
döndüren receiver
tarafından iletilir veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
IllegalArgumentException
hatasının nedeni, API'nin gösterimi bildirmek için aldığı geçersiz giriş bağımsız değişkenidir.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
Gösterimler, en iyi çaba girişimi olarak en fazla bir kez raporlanır.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
request |
ReportImpressionRequest : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
Ads'i seçin
public void selectAds (AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Daha önce çalıştırılan reklam seçimlerinin sonuçlarından bir reklam seçer.
Giriş (adSelectionFromOutcomesConfig
) Ads SDK'sı tarafından sağlanır ve AdSelectionFromOutcomesConfig
nesnesi bir Bağlayıcı çağrısı aracılığıyla aktarılır. Bu nedenle, bu nesnelerin toplam boyutu Android IPC sınırlamalarına bağlıdır. AdSelectionFromOutcomesConfig
aktarılamadıysa TransactionTooLargeException
atılır.
Çıkış, alıcı tarafından iletilir. Alıcı, başarılı bir çalıştırma için AdSelectionOutcome
döndürür veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
adSelectionFromOutcomesConfig
girdisi şunları içerir:
Seller
kayıtlı birAdTechIdentifier
olmalıdır. Aksi takdirdeIllegalStateException
atılır.List of ad selection ids
mevcut olmalı ve aynı uygulamadan yapılanselectAds(AdSelectionConfig, Executor, OutcomeReceiver)
çağrıdan gelmelidir. Aksi takdirde, giriş doğrulaması içinIllegalArgumentException
, listelemeyi ihlal eden reklam seçimi kimliklerini artırır.- HTTPS veya Reklam Seçimi Önceden oluşturulmuş şemalarını izleyebilen
Selection logic URI
.URI, HTTPS şemasını izliyorsa ana makine
seller
ile eşleşmelidir. Aksi takdirdeIllegalArgumentException
atılır.Önceden oluşturulmuş URI'lar,
selectOutcome
için gerekli JavaScript'ler yerine önceden oluşturulmuş genel bir mantığın yerine koyma yöntemidir. Bu uç nokta için önceden oluşturulmuş URI şu şekilde görünmelidir:ad-selection-prebuilt://ad-selection-from-outcomes/<name>?<script-generation-parameters>
Desteklenmeyen bir önceden oluşturulmuş URI iletilirse veya önceden oluşturulmuş URI özelliği hizmet tarafından devre dışı bırakılırsa
IllegalArgumentException
hatası verilir.Desteklenen
<name>
ve gerekli<script-generation-parameters>
içinAdSelectionFromOutcomesConfig.Builder#setSelectionLogicUri
adresine bakın.
IllegalArgumentException
hatalıysa API'nin reklam seçimini çalıştırmak için aldığı geçersiz giriş bağımsız değişkeninden kaynaklanır.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
TimeoutException
devre dışı bırakılırsa kazanan Reklamı bulmak için teklif verme, puanlama veya genel seçim işlemi sırasında zaman aşımı yaşanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
adSelectionFromOutcomesConfig |
AdSelectionFromOutcomesConfig : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz.
Geri çağırma ve işleyici etkinlikleri, hangi iş parçacığının kullanıldığını kontrol etmek için kolay bir yol sağlayan bu Executor aracılığıyla gönderilir. Etkinlikleri uygulamanızın ana iş parçacığı üzerinden göndermek için Context.getMainExecutor() kullanabilirsiniz.
Aksi takdirde, uygun iş parçacığına gönderim yapan bir Executor sağlayın. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
Ads'i seçin
public void selectAds (AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
Arayan uygulama için bir yeniden pazarlama reklamı seçmek üzere cihazda reklam seçme işlemini yürütür.
Giriş (adSelectionConfig
) Ads SDK'sı tarafından sağlanır ve AdSelectionConfig
nesnesi bir Bağlayıcı çağrısı aracılığıyla aktarılır. Bu nedenle, bu nesnelerin toplam boyutu Android IPC sınırlamalarına bağlıdır. AdSelectionConfig
aktarılamadıysa TransactionTooLargeException
atılır.
adSelectionConfig
girişi, HTTPS veya Reklam Seçimi Önceden oluşturulmuş şemalarını takip edebilen Decision Logic Uri
içeriyor.
URI, HTTPS şemasını izliyorsa ana makine seller
ile eşleşmelidir. Aksi takdirde IllegalArgumentException
atılır.
Önceden oluşturulmuş URI'lar, scoreAds
için gerekli JavaScript'ler yerine önceden oluşturulmuş genel bir mantığın yerine koyma yöntemidir. Bu uç nokta için önceden oluşturulmuş URI şu şekilde görünmelidir:
ad-selection-prebuilt://ad-selection/<name>?<script-generation-parameters>
Desteklenmeyen bir önceden oluşturulmuş URI iletilirse veya önceden oluşturulmuş URI özelliği hizmet tarafından devre dışı bırakılırsa IllegalArgumentException
hatası verilir.
Desteklenen <name>
ve zorunlu <script-generation-parameters>
özellikleri için AdSelectionConfig.Builder#setDecisionLogicUri
adresine bakın.
Çıkış, alıcı tarafından iletilir. Alıcı, başarılı bir çalıştırma için AdSelectionOutcome
döndürür veya Exception
, verilen istisnanın türünü ve ilgili hata mesajını içerir.
IllegalArgumentException
hatalıysa API'nin reklam seçimini çalıştırmak için aldığı geçersiz giriş bağımsız değişkeninden kaynaklanır.
IllegalStateException
, "AdSelection hizmetleri başarısızlığı" hata mesajıyla verilirse bu durum, reklam seçim hizmetinin dahili bir hatasından kaynaklanır.
TimeoutException
devre dışı bırakılırsa kazanan Reklamı bulmak için teklif verme, puanlama veya genel seçim işlemi sırasında zaman aşımı yaşanır.
LimitExceededException
hatası verilirse çağrı yapan paket, izin verilen hız sınırlarını aştığında ve kısıtlandığında bu hata meydana gelir.
SecurityException
atlanırsa bunun nedeni, arayanın yetkilendirilmemiş olması veya izin istenmemesidir.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
adSelectionConfig |
AdSelectionConfig : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz.
Geri çağırma ve işleyici etkinlikleri, hangi iş parçacığının kullanıldığını kontrol etmek için kolay bir yol sağlayan bu Executor aracılığıyla gönderilir. Etkinlikleri uygulamanızın ana iş parçacığı üzerinden göndermek için Context.getMainExecutor() kullanabilirsiniz.
Aksi takdirde, uygun iş parçacığına gönderim yapan bir Executor sağlayın. |
receiver |
OutcomeReceiver : Bu değer null olamaz. |
ReklamSayaç Histogramını güncelle
public void updateAdCounterHistogram (UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<Object, Exception> outcomeReceiver)
Daha önce selectAds(android.adservices.adselection.AdSelectionConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver)
çağrısıyla seçilen bir reklamın sayaç histogramlarını günceller.
Sayaç histogramları, reklam seçiminde aday reklamlarda sıklık sınırı filtrelemesine bilgi sağlamak için kullanılır. Sıklık sınırlarına ulaşılan veya aşan reklamlar, reklam seçimi sırasında teklif verme işleminden çıkarılır.
Sayaç histogramları yalnızca, aynı arayan uygulamasından FLEDGE reklam seçimine yapılan son çağrı tarafından döndürülen belirtilen adSelectionId
ile belirtilen reklamlar için güncellenebilir.
Şu durumlarda outcomeReceiver
aracılığıyla SecurityException
iade edilir:
- Uygulama, manifest dosyasında doğru izinleri beyan etmediyse veya
callerAdTechIdentifier
ile tanımlanan uygulama veya tüzel kişinin API'yi kullanma yetkisi yok.
outcomeReceiver
aracılığıyla bir IllegalStateException
döndürülür.
Çağrı, çağrı yapan uygulamanın API kısıtlamasını aşarsa outcomeReceiver
aracılığıyla bir LimitExceededException
döndürülür.
Diğer tüm hata durumlarında, outcomeReceiver
boş bir Object
döndürür. Kullanıcı gizliliğini korumak amacıyla, dahili hataların bir istisna ile geri gönderilmeyeceğini unutmayın.
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
gerektirir
Parametreler | |
---|---|
updateAdCounterHistogramRequest |
UpdateAdCounterHistogramRequest : Bu değer null olamaz. |
executor |
Executor : Bu değer null olamaz.
Geri çağırma ve işleyici etkinlikleri, hangi iş parçacığının kullanıldığını kontrol etmek için kolay bir yol sağlayan bu Executor aracılığıyla gönderilir. Etkinlikleri uygulamanızın ana iş parçacığı üzerinden göndermek için Context.getMainExecutor() kullanabilirsiniz.
Aksi takdirde, uygun iş parçacığına gönderim yapan bir Executor sağlayın. |
outcomeReceiver |
OutcomeReceiver : Bu değer null olamaz. |