ios - 应用程序不断崩溃 [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]:无法识别的选择器已发送到实例
解决方案
愚蠢但有效
// 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