首页 > 解决方案 > 应用程序不断崩溃 [FBLPromise HTTPBody] 无法识别的选择器发送到实例

问题描述

我已经将 Firebase 与我的 iOS 项目以及此处提到的所有必要步骤集成在一起https://firebase.google.com/docs/cloud-messaging/ios/client但它一直在这条线上崩溃[FIRApp configure],在里面- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

这是 由于未捕获的异常“NSInvalidArgumentException”而导致应用程序终止的错误,原因:'-[FBLPromise HTTPBody]:无法识别的选择器已发送到实例

标签: iosobjective-cfirebaseapple-push-notifications

解决方案


愚蠢但有效

//   GlobalImport.pch
#ifndef GlobalImport_pch
#define GlobalImport_pch
#import "FBLPromise+Extension.h"
#endif
//  FBLPromise+Extension.h
#if __has_include(<FBLPromises/FBLPromises.h>)
#import <FBLPromises/FBLPromises.h>
#else
#import "FBLPromises.h"
#endif

@interface FBLPromise (Extension)

@property(nonatomic, readonly) NSHTTPURLResponse *HTTPResponse;
@property(nonatomic, readonly) NSData *HTTPBody;

- (instancetype)initWithResponse:(NSHTTPURLResponse *)response HTTPBody:(NSData *)body;

@end
//  FBLPromise+Extension.m
#import "FBLPromise+Extension.h"

@implementation FBLPromise (Extension)
+ (NSData *)HTTPBody {
    return nil;
}

- (NSData *)HTTPBody {
    return nil;
}

+ (void)setHTTPBody:(NSData *)data {
}

- (void)setHTTPBody:(NSData *)data {
}

+ (NSHTTPURLResponse *)HTTPResponse {
    return nil;
}

- (NSHTTPURLResponse *)HTTPResponse {
    return nil;
}

+ (void)setHTTPResponse:(NSHTTPURLResponse *)data {
}

- (void)setHTTPResponse:(NSHTTPURLResponse *)data {
}

+ (instancetype)initWithResponse:(NSHTTPURLResponse *)response HTTPBody:(nullable NSData *)body {
    return nil;
}

- (instancetype)initWithResponse:(NSHTTPURLResponse *)response HTTPBody:(nullable NSData *)body {
    return nil;
}
@end


推荐阅读