XE8 deploying files with your app (Win32, iOS)

XE8 deploying files with your app (Win32, iOS)

I've been trying to follow DavidI's post here (http://blogs.embarcadero.com/davidi/2013/11/23/43005) but I'm finding that the external file seems to be cached somewhere.

I can add the file, run it on iOS and the file is there, no problem (I don't have any case-sensitive issues, it's working ok and finding the right file).

But if I go and change the contents of the file that I added (it's a text file, the contents will change during the app development), I only ever see the old version of the file on iOS - even if I hit the 'reconcile' button on the Deployment screen. However, removing the file completely and then adding it in again causes it to pick up my changes.

Is there some way of saying to Delphi 'always send over the latest copy of this file'? Am I missing some 'doh!' step that I should have taken somewhere? :-)

Sorry if I haven't explained this very well. I'm assuming the XE5 instructions are fairly applicable to XE8...?
http://blogs.embarcadero.com/davidi/2013/11/23/43005

Comments

  1. Ah, actually deleting and then adding the file WITH THE SAME NAME AGAIN doesn't refresh it, but adding another file does work.

    ReplyDelete
  2. I have not tried on IOS but on Android it is like this:
    When a file is deployed by installing, it is NEVER overwritten by an update.
    I think that is by design, and it is OK, have a look on my example next
    Think about a database where an initial database is deployed by install. In the process of using the app the database is updated by the user with lot of information.
    That information should never just be overwritten by an app update.
    One way of doing an update to a file is to deploy a temp file, so that the app can merges the content into the correct file.
    With databases it is a little more complicated, when the database design changes. but it is the same principle.

    ReplyDelete
  3. Under the iOS Simulator menu choose "Reset Content and Settings..." and then click "Reset". Then redeploy the app. This is the only way I've been able to get those sorts of changes to apply.

    ReplyDelete
  4. Thanks folks, will have another bash with this tomorrow night. I thought I'd tried 'reset' and 'deploy' and everything else I could find but I might not have been entirely meticulous and scientific in my experiments, I'll have another go with a small clean project and a cup of tea :-)

    ReplyDelete
  5. Under android you can press "Clear Cache" button on the Android application manager.  On IOS I think I was just deleting the application when I need to re-deploy a DB.

    ReplyDelete

Post a Comment