2012-07-15 3 views
3

방금 ​​MKNetworkKit을 사용하도록 전환했으며 응용 프로그램 실행시 하나의 MKNetworkEngine 객체를 만들어야하고 네트워크 연결을 원할 때마다 또는 새 객체를 만들어야하는지 혼란 스럽습니다. 매번?MKNetworkKit을 사용할 때 하나의 MKNetworkEngine 객체

하나만 만들고 앱의 수명 내내 사용할 필요가 있다면 MKNetworkKit이 싱글 톤을 생성한다고 가정했을 것입니다. 그러나 볼 수는 없습니다.

한편, 간단한 GET 요청을 할 때마다 MKNetworkEngine을 할당/초기화하는 것이 번거로울 것 같습니다.

뭔가 잘못 될 것 같아서 올바르게 사용하고 있는지 궁금합니다.

답변

1

Etienne678는 권리입니다. 모든 웹 서버에 대한 엔진을 만들고 엔진에서 해당 서버에 필요한 전역 헤더 (예 : gzip) 및 기타 헤더를 ​​설정해야합니다.

작업을 엔진에 대기열에 추가하면 이러한 헤더가 자동으로 추가됩니다.

1

당신은 당신이 전화 앱 위임에 강한 속성으로 유지하고자하는 모든 웹 서비스에 대해 하나 개의 엔진을 만들
(페이스 북 = 하나 개의 엔진/트위터 = 하나 개의 엔진/플리커 = 한 엔진)

제작자 Mugunth Kuma는 다음과 같이 씁니다 :

MKNetworkEngine은 응용 프로그램의 네트워크 대기열을 관리하는 의사 단일 클래스입니다. 단순한 요청의 경우 MKNetworkEngine 메서드를 직접 사용해야합니다. 보다 강력한 사용자 정의를 위해서는 서브 클래스를 만들어야합니다. 모든 MKNetworkEngine 하위 클래스에는 서버 연결 가능성 알림을 알리는 고유 한 Reachability 개체가 있습니다. 사용하는 모든 고유 REST 서버에 대해 MKNetworkEngine의 하위 클래스를 만드는 것을 고려해야합니다. 이 의미에서 pseudo-singleton입니다. 서브 클래스의 모든 단일 요청은 단 하나의 단일 대기열을 통과합니다.

see this blog article

관련 문제