Я хочу записывать собственные ошибки iOS в Sentry, а также записывать некоторые пользовательские сообщения.
Я использую библиотеку sentry-expo, но она фиксирует только ошибки javascript даже с параметром:
deactivateStacktraceMerging: false
Я следовал официальному руководству по установке https://docs.sentry.io/clients/react-native/, но застрял при попытке настроить файл AppDelegate.m
#import "AppDelegate.h"
#import "ExpoKit.h"
#import "EXViewController.h"
#import <Fabric/Fabric.h>
#import <Crashlytics/Crashlytics.h>
#if __has_include(<React/RNSentry.h>)
#import <React/RNSentry.h> // This is used for versions of react >= 0.40
#else
#import "RNSentry.h" // This is used for versions of react < 0.40
#endif
@interface AppDelegate ()
@property (nonatomic, strong) EXViewController *rootViewController;
@end
@implementation AppDelegate
-(EventsObserver*)getEventsObserver
{
return EventsObserver.shared;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[Fabric with:@[[Crashlytics class]]];
[application setMinimumBackgroundFetchInterval:UIApplicationBackgroundFetchIntervalMinimum];
_window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
_window.backgroundColor = [UIColor whiteColor];
[[ExpoKit sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];
_rootViewController = [ExpoKit sharedInstance].rootViewController;
_window.rootViewController = _rootViewController;
[_window makeKeyAndVisible];
[self getEventsObserver];
[RNSentry installWithRootView:rootView];
return YES;
}
На данный момент у меня нет объекта rootView типа RCTRootView. Я использую EXViewController, и библиотека не поддерживает этот тип объекта для вызова функции installWithRootView . Я иду по неверному пути?