Отправить собственные собственные ошибки iOS с sentry-expo - PullRequest
0 голосов
/ 20 мая 2019

Я хочу записывать собственные ошибки 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 . Я иду по неверному пути?

...