2016-12-02 9 views
3

私のバックエンドの会社から擬似ランダムにECONNRESETを受け取るのか分からない。私は疑似乱数を言うので、それは私が大量の要求を開始することによってほぼ毎回それをprovoqueすることができます同じように起こることはありません。Android Retrofit私は時々ECONNRESETを取得し、私はなぜ

私は典型的にはアクティビティのライフサイクルイベントからダウンロードを開始します。したがって、RetrofitCall.enqueue()をバックグラウンドでネットワークに使用します。問題の原因と思われるコードの部分では、バックグラウンドスレッドから一連のダウンロード(jsonsと5-6ファイル用の15個のRESTルート)を開始します。このシナリオでは、ECONNRESETは3つのうち2つのRESTルートを試してみます。

私たちが記録した唯一のものは、サーバーサイドでは説明がありません。ECONNRESETを読み書きしました。ここで

は、私が試したものです:

  • 更新(3.2.0から)3.5.0をokhttpと私は追加2.1.0
  • 2.0.2から)改造する "接続:閉じる" キープを防ぐために、私のリクエストヘッダをint生きている。
  • 私は1に私の合計プール削減:それは私の携帯電話(Androidの6)に起こった .connectionPool(new ConnectionPool(0, 1, TimeUnit.SECONDS))

を、私はコードをテストするために、他の携帯電話を持っていません。私は別のアンドロイド版でテストするのを妨げる私のAVDと無関係な問題を抱えています(間もなく修正予定)。

あなたはこれを踏襲することができますか知っていますか? (私のREST APIがthrought改造とokhttpを疑問視したwhearas)

おかげで、レコードの場合

答えて

0

、私は私のファイルのダウンロード方法でHttpURLConnectionを使用していた、私はokHttpにそれを変更し、それは今、すべての良いことです。

関連する問題