วันนี้ฉันอัปเกรดเป็น Android Studio 3.1 แล้วซึ่งดูเหมือนว่าจะมีการตรวจสอบผ้าสำลีเพิ่มขึ้นอีกเล็กน้อย หนึ่งในการตรวจสอบขุยเหล่านี้มีไว้สำหรับการsubscribe()
เรียกRxJava2 แบบ one-shot ที่ไม่ได้เก็บไว้ในตัวแปร ตัวอย่างเช่นการรับรายชื่อผู้เล่นทั้งหมดจากฐานข้อมูลห้องของฉัน:
Single.just(db)
.subscribeOn(Schedulers.io())
.subscribe(db -> db.playerDao().getAll());
ผลลัพธ์เป็นบล็อกสีเหลืองขนาดใหญ่และคำแนะนำเครื่องมือนี้:
subscribe
ไม่ได้ใช้ผลลัพธ์ของ
แนวทางปฏิบัติที่ดีที่สุดสำหรับการโทรแบบ one-shot Rx เช่นนี้คืออะไร? ฉันควรถือDisposable
และdispose()
ทำให้เสร็จหรือไม่? หรือฉันควรจะ@SuppressLint
เดินต่อไป?
ดูเหมือนว่าจะมีผลเฉพาะ RxJava2 ( io.reactivex
), RxJava ( rx
) ไม่มีผ้าสำลีนี้