AFNetworking4.0ポッドのインストールに失敗しました

エラーは次のとおりです。

// <<<<<<<<<<

依存関係の分析

[!] CocoaPodsは、ポッド「AFNetworking」と互換性のあるバージョンを見つけることができませんでした。

  Podfileの場合:

    AFNetworking(〜> 4.0)

 

「AFNetworking(〜> 4.0)」の依存関係を満たす仕様が見つかりましたが、より高い最小展開ターゲットが必要でした。

 

[!] Podfileでスマートクォートが検出され、無視されました。今後の問題を回避するために、テキストエディットを使用して編集しないでください。テキストエディットを使用していない場合は、選択したエディターでスマートクォートをオフにする必要があります。

// <<<<<<<<<<

 

//解決

podfileのplatform:ios、「8.0」を「9.0」に変更するだけです。

その後、4.0postメソッドが変更されました。古いpostメソッドを新しいメソッドに置き換えるだけです。                             

投稿にはさらに多くのパラメーターがあります:headers:(NSDictionary <NSString *、NSString *> *)headers

 

//详情参考这个文章 https://www.jianshu.com/p/e8b21b3d690d
// 所有的请求方法都会进入这个方法 --- 返回一个请求任务
- (NSURLSessionDataTask *)dataTaskWithHTTPMethod:(NSString *)method
                                       URLString:(NSString *)URLString
                                      parameters:(id)parameters
                                         headers:(NSDictionary <NSString *, NSString *> *)headers
                                  uploadProgress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgress
                                downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgress
                                         success:(void (^)(NSURLSessionDataTask *, id))success
                                         failure:(void (^)(NSURLSessionDataTask *, NSError *))failure
{
    NSError *serializationError = nil;
    
    // 对请求报文首部进行参数拼接完成之后的一个请求
    NSMutableURLRequest *request = [self.requestSerializer requestWithMethod:method URLString:[[NSURL URLWithString:URLString relativeToURL:self.baseURL] absoluteString] parameters:parameters error:&serializationError];
    
    // 如果参数 headers 有值 那么就在对请求头进行设置
    for (NSString *headerField in headers.keyEnumerator) {
        [request addValue:headers[headerField] forHTTPHeaderField:headerField];
    }
    
    // 如果发生错误,异步返回错误, self.completionQueue 默认队列是NULL,会使用主队列,这个参数的意义是提供给外界自行定义,在什么队列中返回错误信息.
    if (serializationError) {
        if (failure) {
            dispatch_async(self.completionQueue ?: dispatch_get_main_queue(), ^{
                failure(nil, serializationError);
            });
        }

        return nil;
    }

    // 根据请求返回一个任务
    __block NSURLSessionDataTask *dataTask = nil;
    
    // 基类调用父类封装的方法,获取一个请求任务.
    dataTask = [self dataTaskWithRequest:request
                          uploadProgress:uploadProgress
                        downloadProgress:downloadProgress
                       completionHandler:^(NSURLResponse * __unused response, id responseObject, NSError *error) {
        if (error) {
            // 请求失败
            if (failure) {
                failure(dataTask, error);
            }
        } else {
            // 请求成功
            if (success) {
                success(dataTask, responseObject);
            }
        }
    }];

    return dataTask;
}

 

おすすめ

転載: blog.csdn.net/ximiaoweilai/article/details/106427838