【问题标题】:How Firebase Performance Monitoring intercepts outgoing http requests in android?Firebase 性能监控如何拦截 android 中传出的 http 请求?
【发布时间】:2020-10-26 06:46:18
【问题描述】:

来自 firebase 的帮助文档 https://firebase.google.com/docs/perf-mon/network-traces?platform=android ,它指出

对于所有应用类型,性能监控会自动为您的应用发出的每个网络请求收集跟踪,称为 HTTP/S 网络请求跟踪 性能监控自动收集使用以下网络库的网络请求的指标:OkHttp3、Java 的 URLConnection、Apache HttpClient

他们如何在不使用任何拦截器的情况下自动跟踪 http 请求?他们是否使用任何字节码操作来跟踪他们?

【问题讨论】:

    标签: android firebase performance bytecode firebase-performance


    【解决方案1】:

    是的,它在 Android 上使用字节码操作。这就是插件在构建时所做的。它会查找所有出现的类似于 HTTP 请求(URLConnection、Apache HTTPClient 和 OKHTTP)的 API 调用,并使用一个对象来装饰这些调用,该对象在运行时监控它们的使用情况。

    如果您想深入了解它的实际工作原理,watch this talk

    【讨论】:

    • 谢谢@Doug。只是好奇,是否也有用于 swift & Objective c 的字节码操作? Firebase 如何自动跟踪 iOS 应用的 URLSession 和 URLConnection ?
    • 如果您有新问题,请单独发布。 iOS 的工作方式不同。
    • 我已将其作为单独的帖子提出 here 。请检查一下。
    猜你喜欢
    • 2021-02-09
    • 1970-01-01
    • 1970-01-01
    • 2019-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-13
    相关资源
    最近更新 更多