Eventuali duplicati:
How can I display the application version revision in my application's settings bundle?iPhone versione dell'applicazione di aggiornamento (in Impostazioni)
Ho un'applicazione per iPhone che consente di visualizzare la versione corrente come impostazioni costante (proprio come Skype fa).
Quando ho rilasciato la prima versione dell'applicazione, io uso questo codice per impostare le impostazioni dell'applicazione:
- (void)registerDefaultsFromSettingsBundle {
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) {
[defaultsToRegister setObject:[prefSpecification objectForKey:@"DefaultValue"] forKey:key];
}
}
[[NSUserDefaults standardUserDefaults] registerDefaults:defaultsToRegister];
[defaultsToRegister release];
}
E questo ha funzionato bene e dandy.
Il problema che devo affrontare ora è che se si aggiorna l'applicazione, questi valori predefiniti (Impostazioni) non vengono né riscritti, quindi la versione dell'applicazione non viene aggiornata.
Come posso forzare l'impostazione di una specifica impostazione su ogni installazione?
Grazie Gonso
Ma quindi non posso avere la versione nella schermata Impostazioni, posso? questo è come mi definisco la Versione: \t \t \t \t \t Tipo \t \t \t PSTitleValueSpecifier \t \t \t Titolo \t \t \t Versione \t \t \t chiave \t \t \t VersioneApplicazione \t \t \t DefaultValue \t \t \t 1.1.2 \t \t –
gonso