2012-06-27 2 views
3

내 앱이 일부 데이터를 검색하기 위해 웹 서비스를 호출하고 있으며 가능한 한 최상의 환경을 만들고 싶습니다. NSURLConnection을 사용하면 좋은 피드백을주는 것이 매우 어렵다는 것을 알았습니다.NSURLConnection에 대한 신뢰할 수있는 대안이 있습니까?

때로는 iPhone이 1 ~ 2 분 동안 데이터를로드하려고하는데 너무 오래 걸리거나 다운로드가 너무 번거로운 이유를 알아낼 방법이 없습니다. 그런 다음 몇 분 후 때때로 오류 코드가 발생합니다.

정확히 무슨 일이 일어나고 있는지 표시하고 싶습니다. 같은 메시지 :

  1. "서버에 연결 시도 중"
  2. "인터넷 연결 설정" "연결 ..."
  3. "데이터를 ... 다운로드" "다운로드가 완료! "

그리고이 서버와 같은 문제에 연결할 수 없거나 DNS가 해결 될 수 없을 때, 그냥 다시 몇 번을 시도하고 간단하게 종료하고 오류가 발생하지 좋을 것입니다.

NSURLConnection 대체물이 있습니까? 더 적절하게 처리하고 무슨 일이 일어나고 있는지에 대한 시간 내 피드백을 더 잘 제공합니까?

+0

[NSURLConnectionDelegate] (https://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSURLConnectionDelegate_Protocol/Reference/Reference.html)에서 보셨습니까? 콜백을 많이하지만 복잡한 것으로 간주 될 수 있습니다. –

+0

NSURLConnectionDelegate 프로토콜로 3, 4, 5를 수행 할 수 있습니다. – nhahtdh

답변

0

Something 원하는 것을 달성하는 데 도움이 될 수 있습니다. ASIHTTPRequest은 더 이상 지원되지 않으므로 MKNetworkKit이 최선의 선택입니다. 연결을 확인하려면 항상 Reachability을 사용할 수 있습니다.

+0

MKNetworkKit은 FY – jjxtra

+0

밑에 NSURLConnection을 사용하고 있습니까? Fiat 팬더도 모터를 가지고있다. .. 그러나 나는 차라리 BMW를 몰 것이다. – Peres

1

NSURLConnection과 NSURLConnectionDelegate를 오용해야한다고 생각합니다. 대부분의 필요를 수행 할 수 있기 때문입니다.

하지만 약 MKNetworkKit은 무엇입니까? 나는 그것을 사용 해왔고 그런 종류의 문제를 다루기가 더 쉽습니다.

+0

고마워! 무슨 일이 일어나고 있는지 적시에 피드백을 제공합니까? 통화 또는 알림을 위임 하시겠습니까? –

4

저는 AFNetworking 라이브러리의 큰 팬이었습니다. 매우 사용하기 쉽고 모든 네트워킹 호출을 매우 쉽게 작업 할 수있는 블록으로 묶습니다.

또한 최신 상태로 유지되므로 프로젝트가 진행되고 오래 될 때마다 필요한 모든 업데이트를 안전하게 받아야합니다.

+0

감사! 무슨 일이 일어나고 있는지 적시에 피드백을 제공합니까? 통화 또는 알림을 위임 하시겠습니까? –

+0

대리자 메서드를 사용하지 않고 블록을 사용합니다. 따라서 연결을 시작하면 성공 블록과 실패 블록이 있습니다. 이 방법은 계속되지만 연결이 완료되면 성공/실패 블록 내의 모든 논리를 수행합니다. 이러한 블록 내부에서 호출 할 자체 대리자 메서드를 항상 만들 수 있습니다. 그것이 내가하는 일입니다. 그런 다음 누가 통지를 받는지 완전하게 제어 할 수 있습니다. –

관련 문제