将AFNetworking从1.2.1版更新到3.1.0版

黎庆荣

Iam将更新目标C中的后期项目,以满足仅支持Ipv6的Apple新要求。我的AFNetworking图书馆现在是1.2.1。我怀疑这是问题所在。我想更新到支持IPv6的最新版本,但是在运行pod install时出现此错误

[!]无法满足以下要求:

  • AFNetworking (~> 3.1.0) 要求 Podfile
  • AFNetworking (= 3.1.0) 要求 Podfile.lock
  • AFNetworking (~> 1.2.1) 要求 AFRaptureXMLRequestOperation (1.0.2)

这是我完整的pod文件

platform :ios, '7.0'

def shared_pods
    pod 'RaptureXML'
    pod 'Realm'
end

def ios_pods

    pod 'AFRaptureXMLRequestOperation'
    pod 'GoogleAnalytics-iOS-SDK', '~> 3.0.9'
    pod 'KGModal', '~> 0.0.1'
    pod 'MagicalRecord'
    pod 'MHNatGeoViewControllerTransition', '~> 1.0'
    pod 'SVProgressHUD', '~> 1.0'
    pod 'UALogger', '~> 0.2.3'
    pod 'Reachability', '~> 3.1.1'
    pod 'RegexKitLite', '~> 4.0'
    pod 'SSKeychain', '~> 1.2.1'
    pod 'TTTAttributedLabel'
    pod 'TPKeyboardAvoiding', '~> 1.1'
    pod 'UIAlertView+Blocks', '~> 0.7'
    pod 'UIActivityIndicator-for-SDWebImage', '~> 1.0.3'
    pod 'SevenSwitch', '~> 1.3.0'
    pod 'ZXingObjC', '~> 3.0'
    pod 'DeviceUtil', '~> 1.2'
end

AFRaptureXMLRequestOperationAFNetworking 3.0可以使用任何方法吗?或任何其他解决方案?任何帮助,我们将不胜感激。谢谢

AFRaptureXMLRequestOperation子类AFHTTPRequestOperation,但该类在AFNetworking 3.x中不再存在。您将无法AFRaptureXMLRequestOperation与AFNetworking 3.x一起使用

如果您只是XML使用AFNetworking 3.x解析响应,则可以使用AFXMLParserResponseSerializer它返回一个NSXMLParser

因此,设置delegateresponseObject,然后调用parse就可以了:

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFXMLParserResponseSerializer serializer];
manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"application/rss+xml"];  // this line is only needed if parsing RSS feed

[manager GET:@"https://developer.apple.com/news/rss/news.rss" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
    NSXMLParser *parser = responseObject;
    parser.delegate = self;
    self.titles = [NSMutableArray array];
    [parser parse];
    NSLog(@"%@", self.titles);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
    NSLog(@"%@", error);
}];

不过,您必须编写自己的NSXMLParserDelegate代码。因此,为了从Apple的RSS feed的XML中解析标题,我添加了两个属性:

@property (nonatomic, strong) NSMutableArray *titles;
@property (nonatomic, strong) NSMutableString *elementValue;

然后实现以下NSXMLParserDelegate方法:

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary<NSString *,NSString *> *)attributeDict {
    if ([elementName isEqualToString:@"title"]) {
        self.elementValue = [NSMutableString string];
    }
}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
    [self.elementValue appendString:string];
}

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
    if ([elementName isEqualToString:@"title"]) {
        [self.titles addObject:self.elementValue];
        self.elementValue = nil;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法从1.00-rc1-final更新到1.0.0版

来自分类Dev

Python2“在一个文件中提高e [0],e [1],e [2]”和python3版本

来自分类Dev

使用Scala收集方法可帮助将[0,0,0,1,1,1,1,0,0,1,1]的列表转换为[3,4,2,2]

来自分类Dev

错误:.NET Core SDK的5.0.10 0-alpha1-014696版本至少需要MSBuild 16.3.0版本

来自分类Dev

这个循环不变及其非正式证明是否正确?(CLRS 第 3 版。练习 2-1-3)

来自分类Dev

如何使用宏将现有数据从 Sheet1 更新到 Sheet2?

来自分类Dev

最新余烬数据(测试版1和测试版2)中的拒绝处理程序

来自分类Dev

python 将列表 [0, 1, 2, 3, 4, 5] 转换为 [0, 1, 2], [1,2,3], [2,3,4]

来自分类Dev

在R中将(0,1,0,0,1,1,1)转换为(0,0,0,1,0,1,2)

来自分类Dev

获取FW / 1版本信息

来自分类Dev

有效的通用代码将Numpy中的2D或1D蒙版数组索引为1D数组

来自分类Dev

将Android Studio更新到版本0.8(测试版)

来自分类Dev

如何将ember.js更新到2.0.1版

来自分类Dev

将GCC更新到6.3版本

来自分类Dev

无法将playonlinux更新到4.2.12版本?

来自分类Dev

在高斯模糊中将2d蒙版转换为1d

来自分类Dev

索引 = 2 不在 [0, 1)

来自分类Dev

Ubuntu 18.04,我正在尝试将 ffmpeg 从 3.x 更新到 4.x,但一直说“ffmpeg 已经是最新版本 (7:4.2.2-1build1~18.04.sav0)”

来自分类Dev

将UTC0更改为UTC + 1 / + 2

来自分类Dev

如何将 Ionic 项目从 1.X 更新到 3.X

来自分类Dev

创建序列0、0、0、0、0、1、1、1、1、1、2、2、2、2、2、3、3、3、3、3、4、4、4、4、4 ,带有seq()的4

来自分类Dev

如何将现有ionic2项目更新到ionic2 CLI的2.1.18版本

来自分类Dev

1TB的AWS EC2流量产生了多少费用?(AWS EC2免费版)

来自分类Dev

该代码的含义([1、2、3] || 0)[0]

来自分类Dev

该代码的含义([1、2、3] || 0)[0]

来自分类Dev

将'1-1-1至1-10-1'转换为'1-1-1','1-2-1',...'1-10-1'的十个值

来自分类Dev

按情况订购以获取此信息:-1,-2,-3、0,+ 1,+ 2,+ 3

来自分类Dev

按情况订购以获取此信息:-1,-2,-3、0,+ 1,+ 2,+ 3

来自分类Dev

For 循环输出 0,-1,1,-2,2,-3,3

Related 相关文章

  1. 1

    无法从1.00-rc1-final更新到1.0.0版

  2. 2

    Python2“在一个文件中提高e [0],e [1],e [2]”和python3版本

  3. 3

    使用Scala收集方法可帮助将[0,0,0,1,1,1,1,0,0,1,1]的列表转换为[3,4,2,2]

  4. 4

    错误:.NET Core SDK的5.0.10 0-alpha1-014696版本至少需要MSBuild 16.3.0版本

  5. 5

    这个循环不变及其非正式证明是否正确?(CLRS 第 3 版。练习 2-1-3)

  6. 6

    如何使用宏将现有数据从 Sheet1 更新到 Sheet2?

  7. 7

    最新余烬数据(测试版1和测试版2)中的拒绝处理程序

  8. 8

    python 将列表 [0, 1, 2, 3, 4, 5] 转换为 [0, 1, 2], [1,2,3], [2,3,4]

  9. 9

    在R中将(0,1,0,0,1,1,1)转换为(0,0,0,1,0,1,2)

  10. 10

    获取FW / 1版本信息

  11. 11

    有效的通用代码将Numpy中的2D或1D蒙版数组索引为1D数组

  12. 12

    将Android Studio更新到版本0.8(测试版)

  13. 13

    如何将ember.js更新到2.0.1版

  14. 14

    将GCC更新到6.3版本

  15. 15

    无法将playonlinux更新到4.2.12版本?

  16. 16

    在高斯模糊中将2d蒙版转换为1d

  17. 17

    索引 = 2 不在 [0, 1)

  18. 18

    Ubuntu 18.04,我正在尝试将 ffmpeg 从 3.x 更新到 4.x,但一直说“ffmpeg 已经是最新版本 (7:4.2.2-1build1~18.04.sav0)”

  19. 19

    将UTC0更改为UTC + 1 / + 2

  20. 20

    如何将 Ionic 项目从 1.X 更新到 3.X

  21. 21

    创建序列0、0、0、0、0、1、1、1、1、1、2、2、2、2、2、3、3、3、3、3、4、4、4、4、4 ,带有seq()的4

  22. 22

    如何将现有ionic2项目更新到ionic2 CLI的2.1.18版本

  23. 23

    1TB的AWS EC2流量产生了多少费用?(AWS EC2免费版)

  24. 24

    该代码的含义([1、2、3] || 0)[0]

  25. 25

    该代码的含义([1、2、3] || 0)[0]

  26. 26

    将'1-1-1至1-10-1'转换为'1-1-1','1-2-1',...'1-10-1'的十个值

  27. 27

    按情况订购以获取此信息:-1,-2,-3、0,+ 1,+ 2,+ 3

  28. 28

    按情况订购以获取此信息:-1,-2,-3、0,+ 1,+ 2,+ 3

  29. 29

    For 循环输出 0,-1,1,-2,2,-3,3

热门标签

归档