Это потому, что это значение хранится с использованием NSUserDefaults, которое хранится на диске и удаляется только при удалении приложения. Вы можете явно установить его в коде так же, как и любой другой пользователь по умолчанию. Вы можете просто создать поле в вашем Info.plist, которое вы изменяете, когда хотите отправить новую сборку. Считайте это значение из списка при запуске, а затем запишите его по умолчанию для вашего пользователя:
NSString *value = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"build_version"];
[[NSUserDefaults standardDefaults] setObject:value forKey@"build_version"];
[[NSUserDefaults standardDefaults] synchronize];
Конечно, вы заменяете "build_version" на то, какое имя вашего ключа указано в вашем файле настроек. Это взлом, но он может удовлетворить ваших QA людей.
Ради аргумента, на самом деле разумно ожидать, что вы должны полностью удалить предыдущую версию, прежде чем увидите обновление номера версии, однако я понимаю, что не все люди, отвечающие за обеспечение качества, являются разумными. ; -)