Как я могу отследить все запросы API, сделанные через мое приложение для Android

В моем приложении для Android я использую сторонние библиотеки, такие как fresco и okhttp3. Я хочу отслеживать ответ на каждый запрос, сделанный через эти библиотеки. И я хочу сделать это глобально

Я также использую react-native в своем приложении, и я хочу отслеживать ответ каждого вызова API, сделанного из реагирующего кода, такого как инструмент мониторинга производительности firebase.

Есть идеи, как firebase это делает?

В okhttp3 я могу добавить перехватчик для их отслеживания, но запрос, сделанный через fresco и react-native, я не могу отслеживать так


person Jin    schedule 27.07.2017    source источник
comment
Если вы хотите отслеживать запросы для целей отладки, вы можете использовать fiddler для захвата всех запросов, сделанных с мобильных телефонов.   -  person Sangeet Suresh    schedule 01.08.2017
comment
@SangeeSuresh спасибо за ответ. Но мне нужно следить за пользователями мобильных устройств. Я интегрировал statsd для Android и хочу отправить всю сетевую трассировку на сервер statsd по протоколу UDP.   -  person Jin    schedule 02.08.2017
comment
ну, вы могли бы хотя бы указать, что вам нужно удаленное ведение журнала в начальном вопросе, вместо того, чтобы позже отрицать действительные ответы   -  person Nick    schedule 07.08.2017


Ответы (4)


@JM Индия

Пожалуйста, проверьте библиотеку Android Snooper. Если я правильно понимаю вашу проблему, это то, что вы ищете.

Надеюсь, это поможет вам.

person Sandy    schedule 07.08.2017
comment
Спасибо Сэнди, я попробую это :) - person Jin; 07.08.2017

Вы можете использовать Charles. Этот мощный инструмент позволяет отслеживать все запросы и ответы. Он работает для всех платформ.

person THANN Phearum    schedule 04.08.2017

В процессе разработки вы можете использовать Stetho для отслеживания любых вызовов через сетевой интеррецептор.

Будут разные способы получить активный экземпляр OkHttp для разных фреймворков, например. ReactNative.

person Yuri Schimke    schedule 06.08.2017
comment
Спасибо, но ReactNative перестал поддерживать OkHttpClientProvider.getOkHttpClient(), и я Stetho не выполнит мое требование. - person Jin; 07.08.2017
comment
Кажется, там github.com/facebook/react-native/blob/0.48-stable/ReactAndroid/ - person Yuri Schimke; 07.08.2017

https://blogs.msdn.microsoft.com/jpsanders/2013/04/03/configuring-fiddler-to-be-a-proxy-for-android-emulators-in-eclipse/

вот как я это делал. Все, что вам нужно сделать, это настроить прокси-сервер с помощью fiddler и настроить эмулятор для его использования.

person Nick    schedule 07.08.2017