2014-12-02 12 views
8

Bir süredir AFNetworking kullanıyordum, ancak son zamanlarda NSUrlSession'un AFNetworking ile aynı işlevselliği sunduğu duyulmaktadır, dolayısıyla AFNetworking kullanılmasına gerek yoktur. Çoğunlukla, operasyonlar, istemciler ve tembel görüntü aşağı-yükleyici gibi bu özelliklerle ilgileniyorum, ancak ne kadar fazla kod yazmam gerektiğini bilmiyorum. AFNetworking'dan NSUrlSession'a hiç kimse geçiş yaptı mı?AFNetworking'ten NSUrlSession'a geçiş yapmayı düşünelim mi?

cevap

14

NSURLSession, AFNetworking'in tüm zenginliğini (özellikle karmaşık HTTP isteklerinin oluşturulması ve yanıtların basitleştirilmiş ayrıştırılması) çoğaltmaz. Bu nedenle, AFNetworking'in bu özelliklerini kullanırsanız, AFNetworking ile kalmak isteyebilirsiniz.

Şu anda NSURLConnection kullanıyor programlayıcı için, NSURLSession bazı güzel geliştirmeler sunuyor. Blok tabanlı NSURLSession yöntemleri, NSURLConnection tarafından sağlanandan daha zengindir. Ayrıca, NSURLSession, uygulamanın çalışmadığı halde isteklerin devam etmesine izin veren arka plan oturum özellikleri sunar. (NSURLConnection tabanlı olan) AFHTTPRequestOperationManager kullanarak AFNetworking geliştirici için

, AFNetworking şimdi AFHTTPSessionManager, (merakla, merkezli değil NSOperationQueue ama) içten NSURLSession güçlendirir çok benzer bir arayüz sunar. Yani, AFNetworking ile bazı NSURLSession özelliklerinden yararlanmak istiyorsanız, AFHTTPRequestOperationManager yerine AFHTTPSessionManager kullanmayı düşünün.

3

AFNetworking, NSUrlSession'ın üzerine yazılmıştır, bu nedenle AFNetworking'in sizin için daha önceden yapılmış olan tüm uygulama ayrıntılarını ve binlerce kullanıcı tarafından test edildiği noktaya uymak istemediğiniz sürece, bundan kurtulmak için bir neden yoktur. günlük olarak bu nedenle oldukça kararlı ve olgun bir kütüphanedir.

0

Yerel NSUrlConnection ve NSUrlSession öğelerinin iç çalışmalarını bildiğim gibi kullanmıyorum, ancak çoğu kişi için AFNetworking 2.X ile çalışmak çok daha kolay. AFX'in 1.X'inin bir hayranı değildim, bu yüzden 2.X'in kullanıma sunulmasından önce kendimi derinden yaptım.

İlgili konular