목표 : 나는 Setting.Bundle에서iPhone 응용 프로그램 환경 설정을 런타임에 변경하는 방법은 무엇입니까?
내가 가진 런타임에 아이폰 응용 프로그램 환경 설정을 설정하려면 제목 = 버전과의 DefaultValue = 그래서 런타임에 새 버전의 난에이 사용할 수있는 경우 1.0
iphone 응용 프로그램 환경 설정 기본값을 변경하십시오. 그러나 나는 그렇게 할 수 없다. 대신 내 코드에서 뭐가 잘못 몰라요 1.1
의 1.0 보여주는
코드 :
NSString *settingsBundle = [[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"bundle"];
if(!settingsBundle) {
NSLog(@"Could not find Settings.bundle");
return;
}
NSDictionary *settings = [NSDictionary dictionaryWithContentsOfFile:[settingsBundle stringByAppendingPathComponent:@"Root.plist"]];
NSArray *preferences = [settings objectForKey:@"PreferenceSpecifiers"];
NSMutableDictionary *defaultsToRegister = [[NSMutableDictionary alloc] initWithCapacity:[preferences count]];
for(NSDictionary *prefSpecification in preferences) {
NSString *key = [prefSpecification objectForKey:@"Key"];
if(key) {
if([key isEqualToString:@"name_preference"])
{
NSString *a=[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
[defaultsToRegister setObject:a forKey:key];
}
else {
[defaultsToRegister setObject:[prefSpecification objectForKey:@"DefaultValue"] forKey:key];
}
}
}
[[NSUserDefaults standardUserDefaults] registerDefaults:defaultsToRegister];