Описанный ниже способ является “костылем”, т.к. API для смены иконки и загрузочного экрана(Default) приложения в iOS SDK до сих пор нет.
Ниже описаны действия для смены иконки и загрузочного экрана приложения:
1) Откройте Info.plist в проекте своего приложения ;
2) Если хотите менять иконку приложения, то добавьте ключ “Icon files“, если его не было, и установите ключ “../Documents/Icon.png“, а также ключ “Icon already includes gloss effects” со значением “YES” ;
3) Если хотите менять загрузочный экран приложения, то добавьте ключ “Launch image“, если его не было, и установите ключ “../Documents/Default.png” ;
4) При первом запуске у нас не будет иконки и загрузочного экрана. Поэтому далее кодом копируем/создаем файл изображения в директорию песочницы /Documents/Icon.png (и в /Documents/Default.png для загрузочного экрана) при помощи NSFileManager.
5) При выходе из приложения у нас иконка именится на ту, которая находится в /Documents/Icon.png
6) При втором запуске приложения загрузочный экран будет иметь изображение, которое находится в /Documents/Default.png
Если мы хотим, чтобы загрузочный экран еще раз изменился, то просто перезаписываем файл /Documents/Default.png.
Но вот со сменой иконки не все так просто. Если перезапишем файл /Documents/Icon.png, то на рабочем столе иконка обновится только после респринга (перезагрузки SpringBoard).