我已经实现了所有ASIHTTPRequest文件,但不幸的是发生了以下错误:
为什么会这样?
答案 0 :(得分:30)
ASIHTTPRequest不支持ARC,因此如果您在启用了ARC的项目中使用它,则会出现错误。
有关如何针对此处建议的asihttprequest文件禁用ARC的各种解决方案:
https://github.com/pokeb/asi-http-request/issues/210
最简单的方法就是为ASIHTTPRequest源文件禁用ARC,请参见此处:How can I disable ARC for a single file in a project?
有人已经开始了他们称之为ARC兼容的HTTPRequest - 基本上是一个非常小的NSURLConnection包装器,它具有与ASIHTTPRequest类似的接口:
https://github.com/imathome/ARCHTTPRequest
它不支持完整ASIHTTPRequest的所有/大部分功能。
最后,很多人都在转而使用AFNetworking。最近的版本都使用ARC,尽管建议使用它的方法是通过CocoaPods,ARC编译器标志将自动正确排序:
https://github.com/AFNetworking/AFNetworking/wiki/Getting-Started-with-AFNetworking
答案 1 :(得分:6)
答案 2 :(得分:0)
这种情况正在发生,因为当您启用ARC时,您无法使用标准内存管理方法,如“保留”,“释放”等。只需删除这些方法调用,您就可以了。或者,如果您愿意,可以为这些文件关闭ARC。
答案 3 :(得分:0)
ARC代表自动引用计数,其中ios本身负责保留,释放,因此您应该禁用ARC或获取新ARC支持的ASIHTTPRequest文件...欢呼。
答案 4 :(得分:0)
你可以用它。如果您使用ARC。使用它的好处是我只是在本机URLConnection类上创建一个包装器,因此对库的本机支持更可靠。