We’re currently preparing an Ionic 4 application for iOS and Android release. Across both platforms I’ve observed this behaviour:
We use a custom component to fetch and display (basically figure > img) because our image API is programmatic. This component just calls a service to fetch the image and turn the blob into a URL.
Before the user shuts down the app, this works totally fine. It displays correctly.
After the user restarts the application, and older version of this component displays with a placeholder graphic.
All instances of this component use the same placeholder graphic.
At this point in time I have removed both the placeholder graphic and all references to it from our code. It appears that after the user restarts the application it shows the older component.
Sounds interesting (/ weird). Could it be possible, that your Server / API returns some (wrong?) headers for the images itself? Something like the time to cache, revalidate or Cache-Control in general? That would mean, that the client do not request images on each app start after the first one.
@Unkn0wn0x Header caching is not the issue. Requests are programmatic, though I’m happy for the browser to cache subsequent results. Literally, more and more it looks like the native application is caching and loading fragments from older versions of the application.
We pushed out native test releases through the Google Play and iTunes stores so that our testers would stay up to date, because they’re more likely to install and try out new features when notified through those channels.
Our builds have OTA updates enabled.
Our last OTA build is behind latest production.
Whenever the app launches it pulls down the latest OTA release.
When the app is killed and restarted it applied the OTA.
Listos version: The app regressed to an earlier OTA release.