我将把喜欢的单词保留在firestore中。
我使用“ words-track”创建了一个集合引用。 然后通过add()方法将单词项添加到集合引用中。
fun <T> setItemRx(
collection: String,
item: T
): Completable {
var ref = firestore.collection(collection)
return setItemRx(ref, item)
}
fun <T> setItemRx(
ref: CollectionReference,
item: T
): Completable {
return Completable.create { emitter ->
RxCompletableHandler.assignOnTask(emitter, ref.add(item!!))
}
}
public static <T> void assignOnTask(CompletableEmitter emitter, Task<T> task) {
RxCompletableHandler<T> handler = new RxCompletableHandler<>(emitter);
task.addOnFailureListener(handler);
task.addOnSuccessListener(handler);
try {
task.addOnCompleteListener(handler);
} catch (Throwable error) {
Timber.e(error);
}
}
该单词项目需要添加到“单词跟踪”集合中。