2012-12-26 35 views
8

Với AFNetworking bạn thường enqueue hoạt động bằng cách làm như sau:Lưu hoặc tuần tự hóa hàng đợi hoạt động AFNetworking?

[_httpClient enqueueHTTPRequestOperation:operation]; 

Có cách nào để serialize hoặc lưu hàng đợi để nó có thể được nối lại sau khi App Chấm dứt?

+0

Tôi nghĩ bạn sẽ phải đi theo con đường tuân thủ giao thức NSCoding. Tôi có thể thấy rằng AFURLConnectionOperation đã làm như vậy. – shawnwall

+0

Bạn muốn xem một số ví dụ chi tiết. – Goles

+2

một số hướng dẫn: http://soff.es/archiving-objective-c-objects-with-nscoding http://www.raywenderlich.com/1914/how-to-save-your-app-data-with-nscoding -and-nsfilemanager – shawnwall

Trả lời

2

Trên thực tế nếu bạn nhìn vào AFURLConnectionOperation nó thực hiện NSCoding giao thức, và .m tập tin phản ánh rằng bằng cách thực hiện initWithCoder:encodeWithCoder: phương pháp

Mặc dù AFHTTPClient lớp cơ sở là NSCoding compliant quá nó doesn't serialize queue itself

Nhưng không có gì dừng bạn từ tận dụng tồn tại codebase và mở rộng tính năng mã hóa/giải mã để sắp xếp hàng đợi hoạt động trong lớp con tùy chỉnh của bạn của AFHTTPClient

Hy vọng nó có ý nghĩa!

+0

Lưu ý rằng AFHTTPRequestOperation tạm dừng chính nó khi bạn gọi encodeWithCoder:! Đây là một bản ghi nhớ lớn đối với tôi khi tôi đang làm việc này ... –

+0

cũng vậy, nếu bạn đang nhắm mục tiêu iOS7 +, bạn có thể cân nhắc sử dụng triển khai AFNetworking dựa trên 'NSURLSession' thay thế –

Các vấn đề liên quan