React Native & okhttp unter Android - User-Agent einstellen

Ich versuche das @ zu setzUser-Agent mit React Native auf Android. Ich habe nachgeforscht und es sieht so aus, als sollte ich ein @ verwendeokhttp Interceptor. Ein Beispiel, das ich gefunden habe, erklärt, wie dies gemacht werden sollte Verknüpfun) aber dann bin ich mir nicht sicher, wie ich den Interceptor registrieren soll.

So um das @ einzustellUser-Agent Ich benutze diese Klasse:

public class CustomInterceptor implements Interceptor {
    @Override public Response intercept(Interceptor.Chain chain) throws IOException {
      Request originalRequest = chain.request();
      Request requestWithUserAgent = originalRequest.newBuilder()
          .removeHeader("User-Agent")
          .header("User-Agent", "Trevor")
          .build();
      return chain.proceed(requestWithUserAgent);
    }
}

Dann müssen Sie den obigen Interceptor registrieren, damit er dort ausgeführt werden kann, wo er benötigt wird. Vielleicht inMainActivity.java?

OkHttpClient okHttp = new OkHttpClient();
okHttp.interceptors().add(new CustomInterceptor());

Ich erhalte keine Fehler beim Erstellen der App, daher denke ich, dass dasCustomInterceptor sollte in Ordnung sein - muss nur von der App verwendet werden.

AKTUALISIERE: Ich versuche gerade, den Abfangjäger in @ zu registriereMainActivity aber es wird es nicht abholen:

public class MainActivity extends ReactActivity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    OkHttpClient client = new OkHttpClient();
    client.networkInterceptors().add(new CustomInterceptor());

  };

};

Antworten auf die Frage(6)

Ihre Antwort auf die Frage