RxWorker'da mesaj dizisi
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
WorkManager ve RxJava arasında birlikte çalışabilirlik sağlıyoruz. Başlangıç olarak
gradle dosyanıza work-runtime
ek olarak work-rxjava3
bağımlılığını ekleyin.
Bunun yerine rxjava2'yi destekleyen bir work-rxjava2
bağımlılığı da vardır.
Sonra, Worker
uzatılır yerine RxWorker
uzatılmalıdır. Son
RxWorker.createWork()
ayarını geçersiz kıl
yöntemini kullandığınızda, yürütmenizin Result
değerini belirten bir Single<Result>
değeri
şöyle olur:
Kotlin
class RxDownloadWorker(
context: Context,
params: WorkerParameters
) : RxWorker(context, params) {
override fun createWork(): Single<Result> {
return Observable.range(0, 100)
.flatMap { download("https://www.example.com") }
.toList()
.map { Result.success() }
}
}
Java
public class RxDownloadWorker extends RxWorker {
public RxDownloadWorker(Context context, WorkerParameters params) {
super(context, params);
}
@NonNull
@Override
public Single<Result> createWork() {
return Observable.range(0, 100)
.flatMap { download("https://www.example.com") }
.toList()
.map { Result.success() };
}
}
RxWorker.createWork()
öğesinin ana iş parçacığında çağrıldığını, ancak dönüşünün
değeri varsayılan olarak bir arka plan ileti dizisinde abonedir. Değiştirmek için RxWorker.getBackgroundScheduler()
değerini geçersiz kılabilirsiniz.
abone olma.
onStopped()
olan RxWorker
, abonelikten çıkarılır. Bu nedenle
iş duraklamalarını özel bir şekilde ele almanız gerekmez.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2024-08-22 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"İhtiyacım olan bilgiler yok"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Çok karmaşık / çok fazla adım var"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Güncel değil"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Çeviri sorunu"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Örnek veya kod sorunu"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Diğer"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Anlaması kolay"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Sorunumu çözdü"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Diğer"
}]
{"lastModified": "Son g\u00fcncelleme tarihi: 2024-08-22 UTC."}
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2024-08-22 UTC."]]