2016-10-31 1 views
0

こんにちは私はyoutubeチャンネルから最後の10の動画を表示する必要があるアプリをやっています。私はここでそれを使用して、特定のユーチューブチャンネルから最後の10本のビデオを得ることができるようにチャネルIDを取得するつもりだというJSONからhttps://www.googleapis.com/youtube/v3/channels?part=contentDetails&forUsername={Channel name}&key={Api key}最初のonResponseレトロフィットコールで別のレトロフィットコールを使用することはできますか?

:私は、私はこれを使用

を最初に改造を使用しています:

https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&playlistId={channel ID}&maxResults=10&key={Api key}

私はすでに最初の部分を行なったし、私は改造を使用してチャネルIDを得ました。

fist onResponse retrofitコール内に別の改造コールを使用してもよろしいですか?それはバックグラウンドスレッドの中にバックグラウンドスレッドを持つか、これを行う別の方法ですか?

+0

RxJavaはこの「ネスティング」を多少修正します。しかし、それはあなたが新しい図書館を学ばなければならないでしょう –

答えて

0

あなたのonResponseメソッドで別のレトロフィットコールを作成する際に問題はないと思います。

onResponseコールバックがメインのAndroidスレッドで実行されるため、スレッドを「入れ子にしません」。したがって、別の呼び出しをエンキューすると、メインスレッドからスレッドがスピンされます。このため、メインスレッドに戻るため、新しい呼び出しでexecute()を直接呼び出すことはできません。

0

はい、問題はありませんが、他の呼び出しを特定の関数に持ち、関数を呼び出す最初の呼び出しのコールバックの中に入れる方が良いと思います。

読み込みとデバッグが優れているため、ネストされたコールバックはバグを追跡するのに少し面倒です。