Caching in junaio

In order to minimize the bandwidth usage of junaio, some information is cached. We differentiate between caching on the client (mobile device) and caching on the servers.

Caching on the client

Certain information is cached on the mobile device individually for each user. here, junaio works very similar to any normal browser that caches images and similar.
junaio application on the mobile device cache:

  • 3D Models
  • Images
  • Tracking configurations (tracking XMLs)
  • Sound and video files.

Currently, that information is cached based on the URL.

Starting with junaio 4.7, junaio will also send a conditional get request to your server to find out if a cached item has been updated. In that case it will download the asset again, otherwise use the cached version.

 

While developing:

  1. You can clear the cache once:
    iOS: Settings -> junaio -> clear cache -> make sure to restart junaio completely (clear from multitasking bar)
    Android: open junaio and log in as developer -> you will find a clear cache button
  2. Disable Cache completely:
    iOS: Settings ->junaio -> Enable Developer Mode then go to Developer Mode Settings -> Turn off Enable Caching -> make sure to restart junaio completely (clear from multitasking bar) 
    Android: open junaio and log in as developer -> Settings -> Enable Developer Mode -> Turn off Enable Caching
  3. You can also change the URL to your information, so the device recognizes it as a new file

Note on caching javascript files

Unfortunately the referenced javascript files are cached by the OS. To work around this, the link to the javascript file can be modified slightly to force the browser window to download it again.

e.g.:

<script src="logic.js" type="text/javascript"></script>

can be changed to 

<script src="logic.js?123" type="text/javascript"></script>

Caching on the servers

In addition to caching on the device, we also cache some information about your channel on the server.

IMPORTANT: We never touch information coming from your server. We only cache the information provided on the website, such as thumbnail, callback URL, etc.

Changes to the callback URL and other textual information and settings are cached for 5 minutes. 
Example: You create a channel and test it on the device. Then you find out the callback URL was incorrect (you should have validated the channel first by the way :D). Then you change the callback URL, it will take approx. 5 minutes until a request from the device will use the new callback URL.

The validation test will use your information without caching delay.

Channel thumbnails are cached for 2hrs on the server.