diff --git a/packages/react-native/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp b/packages/react-native/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp index deeab6b22c4d..77ebb2845ada 100644 --- a/packages/react-native/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp +++ b/packages/react-native/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp @@ -12,6 +12,10 @@ #include #include +#ifdef __APPLE__ +#include +#endif + #include "FuseboxPerfettoDataSource.h" #include "HermesPerfettoDataSource.h" #include "ReactPerfettoCategories.h" @@ -26,7 +30,13 @@ void initializePerfetto() { // is only used in tracing build, large buffers are okay // for now. args.shmem_size_hint_kb = 20 * 1024; +#if defined(__APPLE__) && TARGET_OS_IPHONE + // iOS and the other Apple device platforms have no system tracing + // service. + args.backends |= perfetto::kInProcessBackend; +#else args.backends |= perfetto::kSystemBackend; +#endif args.use_monotonic_clock = true; perfetto::Tracing::Initialize(args); TrackEvent::Register();