2011-08-12 5 views
0

저는 ASIHTTPRequest를 사용하여 사용자가 입력 한 데이터를 PHP 웹 서비스 레이어를 통해 원격 MySQL 데이터베이스에 전송하는 iPhone 앱을 보유하고 있습니다. 이것은 완벽하게 작동합니다.iPhone 데이터 전송 문제

사용자가 제출 버튼을 누르면 관계없이 데이터를 전송해야합니다 ... 대역폭이 충분하지 않을 때 문제가 발생합니다. 사용자에게 알리기 위해 uialert를 표시하는 대신 몇 가지 기능을 구현하고 싶습니다. 앱이 (메인보기에서) 실행되지 않아도 사용자가 '제출'을 한 번만 눌러야한다는 것을 보장하는 경우에도 인터넷 연결을 끊임없이 '감지'합니다.

어떻게 가능합니까? 누구든지 비슷한 튜토리얼/예제를 접하게 되었습니까?

답변

2

점검 : Reachability

이 연결이 변경 될 때 감지하는 몇 가지 코드와 함께 당신을 도울 것입니다.

다음은 역 접지 작업에 대한 링크입니다. 읽으면서 작업을 완료하는 데 추가 시간을 요청할 수 있지만 완료 될 때까지 무한한 시간을 기다리지는 않습니다. Background Tasks

+0

+1. 도달 가능성에는 네트워크 상태 변경에 대한 알림이 포함됩니다. "스니핑 (sniffing)"보다 더 좋은 옵션입니다. 특히 자신의 "스니퍼 (sniffer)"를 굴리려는 경향이있는 경우 특히 그렇습니다. –

+0

앱이 종료되면 계속 표시 되나요? 있는 그대로 제출 버튼을 누른 다음 응용 프로그램이 종료되거나 최소화 된 경우 데이터가 전송되는지 확인할 수 있습니까? – user559142

+0

백그라운드 작업에 대한 Apple 설명서의 링크를 사용하여 답변에 추가했습니다. – thomashw

0

연결이 가능함을 감지하면 원하는 작업을 수행 할 수있는 일종의 플래그와 함께 Reachability API를 사용하십시오. 애플이 예제 애플리케이션 밖으로