3

In the next version of my iOS application, I modified the Default.png image. The new image (now localized) is featured prominently throughout the application.

To test the upgrade process on my device, initiate the installation from Xcode on a device that has previous version of the application. My problem is that during this mock upgrade, the splash image appears as the old Default.png. Additionally, when displaying Default.png elsewhere in the application, it also continues to be the old one.

However, if I first remove the application from the device, and afterwards install (rather than upgrade), the new splash image does appear properly.


How do I fix this, or is this to be expected when mock upgrading via Xcode? Can/Should I rely on the upgrade process executing properly when it happens through the app store?

The closest question seems to be this: Updated splash / launch not working
The answer, though sounding great, seems speculative.

Thanks in advance.

Community
  • 1
  • 1
Eitan
  • 1,308
  • 3
  • 15
  • 32

2 Answers2

3

I contacted Apple and they sent me the following:

https://developer.apple.com/library/ios/#technotes/tn2285/_index.html

It explains:

  1. How to properly test for updates
  2. That during an 'Xcode update' not all assets get refreshed
  3. When properly testing the upgrade, assets do get replaced as they should

Long story short, test upgrades properly and things will appear as they should.

Eitan
  • 1,308
  • 3
  • 15
  • 32
  • 1
    Linked document says "Do not use Xcode to install or run updates to your app for quality assurance testing." which is fine. However, it says "To make the development cycle faster, Xcode only pushes changed files into the apps it runs, and does not delete files from existing app-bundles." That's really bad because a developer (uses Xcode) wants to see changes made to an XIB after having localized it, the app keeps using the old non-localized XIB. Developers use Xcode to see their changes!! I had to delete the app on the device before I could see changes reflected. – Only You Jan 24 '13 at 07:41
  • 1
    They think they are making development cycle faster??? I spent more time figuring out why a simple button added to the localized XIB is not showing! – Only You Jan 24 '13 at 07:42
1

Here are a few things to try (not guarantees but worth a shot):

Delete the Derived Data for your project. Go to the Window menu at the top, click organizer, click the projects tab at the top, select your project and click the "Delete" button next to "Derived Data".

Clean your project. Product menu then "Clean" option.

Make sure that the old default image has been deleted from it's location in the file system (sometimes Xcode says it deleted something, but in actuality the file is still there on the file system).

Nosrettap
  • 10,940
  • 23
  • 85
  • 140
  • Thank you for the answer. Unfortunately (1) Deleting the derived data had no effect (2) Neither did cleaning it (3) Yes, I verified that the old Default.png is no longer there. – Eitan Jul 26 '12 at 15:59
  • One more suggestion, go to target (you can find this in the left Navigator panel of Xcode) and the summary tab. Then right click on all of the images that are shown as launch images and delete them. Now, drag your new images to where the old images were. If this doesn't work, I don't know what to say...Xcode can be annoying at times. – Nosrettap Jul 26 '12 at 17:10
  • That derived data fixed it for me! – Tom Kincaid Jun 18 '13 at 21:57