在IOS 8不能得到__NSCFURLSession类(cannot get __NSCFURLSe

2019-10-29 12:04发布

我有代码段像这样

C = NSClassFromString(@ “__ NSCFURLSession”);

使用的是iOS 7模拟器,我能得到C ^

C类__NSCFURLSession 0x00000001113a2ce8

但在IOS 8,我得到

C类为0x0 0x0000000000000000

有没有人有一个解决方案?

Answer 1:

我觉得NSCFURLSession是不是一个真正的类,和iOS 8具有更强的类类型检查,并能够检测到真正的类。

尝试改变线路:

c = NSClassFromString(@"NSURLSession");


Answer 2:

与像领先的下划线类__NSCFURLSession是私人的,不应该被直接访问。 原因是,当底层实现的改变,因为它似乎已经iOS的7和8之间的任何东西做根据这些私人实现细节都受到损坏。

实际的公共类是NSURLSession ,其可与被访问NSClassFromString(@"NSURLSession")或简称为[NSURLSession class]



Answer 3:

它看起来像苹果已经改变了这种私有类__NSURLSessionLocal

C = NSClassFromString(@ “__ NSURLSessionLocal”)



文章来源: cannot get __NSCFURLSession class under ios 8