首页 > 解决方案 > 选择器“名称”没有已知的类方法

问题描述

在此处输入图像描述我有两个文件,一个名为 CodeInjection.m,其内容如下

#import <Foundation/Foundation.h>
#import "Someheaderfile.h"


@interface CodeInjection: NSObject
@end

@implementation CodeInjection

static void __attribute__((constructor)) initialize(void){
    NSLog(@"==== Code Injection in Action====");
    [[CodeInjectionSwift shared] performTask];
}

@end

然后我有一个包含内容的 CodeInjectionSwift.swift 文件

import Foundation
import NetworkInterceptor

@objc class CodeInjectionSwift: NSObject {
    @objc public static let shared = CodeInjectionSwift()

    override private init(){}

    @objc func performTask(){
        let requestSniffers: [RequestSniffer] = [
            RequestSniffer(requestEvaluator: AnyHttpRequestEvaluator(), handlers: [
                SniffableRequestHandlerRegistrable.console(logginMode: .nslog).requestHandler()
                ])
        ]

        let requestRedirectors: [RequestRedirector] = [
            RequestRedirector(requestEvaluator: DomainHttpRequestEvaluator(domain: "www.antennahouse.com"), redirectableRequestHandler: AlternateUrlRequestRedirector(url: URL(string: "https://www.rhodeshouse.ox.ac.uk/media/1002/sample-pdf-file.pdf")!))
        ]

        let networkConfig = NetworkInterceptorConfig(requestSniffers: requestSniffers,
                                                     requestRedirectors: requestRedirectors)
        NetworkInterceptor.shared.setup(config: networkConfig)
        NetworkInterceptor.shared.startRecording()
    }
}

尝试使用“CodeInjectionSwift”时,出现这样的错误

在此处输入图像描述

标签: iosobjective-cswiftxcode

解决方案


@objc func performTask()公开 :@objc public func performTask()


推荐阅读