У меня похожий опыт. Наше приложение хранит номер версии в Settings.Bundle / Root.Plist. Это отображается в приложении «Настройки iPhone». Мы обнаруживаем, что при установке номер версии загружается из пакета приложения - поэтому номер версии правильный. Однако при обновлении номер версии не меняется. Это создает впечатление, что пользователь запускает предыдущую версию приложения. У нас нет никакой логики, связанной с номером версии, она только для отображения (она может использоваться персоналом контакт-центра при диагностике неисправностей).
Наш опыт показывает, что NSUserDefaults не очищается, когда пользователь обновляет наше приложение, но экран настроек также не обновляется.