2012-06-27 3 views
1

저는 앱을 제공하는 서버에 plist를 가지고 있습니다. 실행시 응용 프로그램은 plist를 다운로드하고 실행을 계속하기 전에 몇 가지 사항을 확인합니다.plist를 다운로드하고 있지만 매번 캐시 된 버전을 얻는 것처럼 보입니다.

내가 겪고있는 문제는 내 서버에서 plist를 업데이트 할 때마다 앱이 매번 이전 버전을 다운로드하는 것 같습니다. 최소한 콘솔 로그에서 필자가 plist에서했던 업데이트를보고 있지 않습니다. 확인하고 설치된 파일과 비교하기 위해 정수를 업데이트하지만 정수가 새 파일로 변경되지 않습니다.

내 서버 (일부 호스팅 업체)가 캐시 된 버전을 제공하는지 여부는 확실하지 않습니다. 브라우저 또는 FTP를 통해 파일을 볼 때 문제가되지 않으며 새로운 업데이트 정수 또는 문제가 앱과 관련되어 있는지 여부는 확실하지 않습니다. ? AFNetworking을 사용 중입니다. 미친 캐싱이 있습니까?

모든 조언을 주시면 감사하겠습니다.

업데이트 : 방금 ​​서버에서 파일을 삭제하고 응용 프로그램을 다시 실행하려고 시도했지만 콘솔에서 파일을 계속 출력하려고했습니다 ... 앱에 이상한 캐싱이있는 것 같습니다.

답변

1

AFNetworking (아직!)을 사용하지는 않았지만 NSURLRequest를 사용하여 비슷한 문제가 발생하여 requestWithURL:cachePolicy:timeoutInterval:을 사용하여 요청을 작성하고 캐시 정책을 지정하는 대신 requestWithURL:이 내 문제를 해결했습니다.

NSURLRequest *urlRequest = [NSURLRequest requestWithURL:downloadURL cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60];

이 정보가 도움이되기를 바랍니다.

+0

감사합니다. 이 네트워킹 호출에서 AFNetworking 코드를 제거하고 NSURLConnection을 사용했습니다. NSURLConnection은이를 수정 한 것 같습니다. AFNetworking의 클래스를 살펴본 결과 엄격한 캐싱이 노출되지 않았기 때문에 놀랐습니다. – runmad

관련 문제