2012-03-08 7 views

답변

12

가장 간단한 방법은 현재 버전을 구한 다음 버전을 저장된 버전 (있는 경우)과 비교하고 필요한 경우 정리를 수행하여 새 버전을 저장하는 것입니다. 다음은 비교를 위해 버전 정보를 검색하고 저장하는 예제입니다.

//Getting the application version 
NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] 

//Retrieving the saved application version 
NSString *savedVersion = [[NSUserDefaults standardUserDefaults] stringForKey:@"versionkey"]; 

//Saving the version 
[[NSUserDefaults standardUserDefaults] setObject:version forKey:@"versionkey"]; 

그리고 당신이 여기 버전을 비교하는 방법을 궁금해하는 경우는 NSNumericSearch 옵션을 비교하여 예입니다 http://spitzkoff.com/craig/?p=148

1

그런 다음 시작시 비교, 데이터베이스 테이블에서 "마지막으로 본"버전 번호를 저장할 수 해당 값을 번들 버전 번호와 비교합니다. 수행하여이 가져 오기 :

NSString* version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]; 

현재 버전이 "마지막 본"버전보다 큰 경우

은 당신의 집 청소를 수행, 현재 번들 버전으로 데이터베이스 테이블에서 "마지막으로 본"버전을 업데이트합니다.

1

조의 방식은 완벽합니다. 이전 버전에서 기본값으로 버전을 설정하지 않거나 현재 버전이 저장된 버전과 일치하는지 확인하려는 경우 해당 사용자를 도와 주기만하면됩니다.

//Getting the application version 
NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] 
//Retrieving the saved application version 
NSString *savedVersion = [[NSUserDefaults standardUserDefaults] stringForKey:@"versionkey"]; 

if (version == nil || [version isEqualToString:savedVersion]){ 
//Saving the version 
    [[NSUserDefaults standardUserDefaults] setObject:version forKey:@"versionkey"]; 
} 
관련 문제