0
RxJava2とRetrofit2(Kotlin)を使用していくつかのApiデータを取得しようとしているときにアンドロイドアプリの問題に直面しています。コールを実行すると、画面は黒くなり、アプリケーションはログメッセージなしでもう応答しなくなります。RxJava2 +データリクエスト時に黒い画面を表示
@GET("api/apartments?projection={\"id\":1,\"address\":1}")
fun getAllApartments(@Header(AUTHORIZATION) auth: String): Single<List<APTLIST>>
これは私が呼び出しを実行する方法です:
api/apartments?projection={"id":1,"address":1}
この呼び出しのためのサービス・インターフェースはこの1つである:
私が使用しているコールのURLは以下のとおりです。
override fun getAllApartments(): Single<List<APTLIST>> = retrofit.create(ApartmentsService::class.java).getAllApartments("$BEARER$token")
これは私がこの関数を呼び出す方法です。
getAllApartmentsUseCase.getAllApartments()
.subscribe(
{
apartments.clear()
apartments.addAll(it)
view.showApartments(apartments)
},
{ println(it.message) }
)
この呼び出しは、ポストマン上で動作し、結果は以下の通りです:
[
{
"_id": "591ecaca861a528a5b4c3d90",
"id": "ROC 03"
},
{
"_id": "591a0fb2861a528a5b4c3d60"
},
{
"_id": "58be94d484c4b0a468fb93e0",
"id": "CAN 2.3",
"address": "Els Refugis"
}
]
だけリターン単一ずにエンドポイントを消費することを最初に試します。あなたの問題はRX – paul
に関係しているかどうかわかりません。それはそうではないようです.execute()経由で同期呼び出しを実行すると、黒い画面でフリーズします。たぶん私はこのURLクエリを使用している方法ですか? – Joan
アンドロイドメイトには分かりません。エンドポイントに非常に簡単なリクエストを作成しよう – paul