Content update workflow

Hi! I’m trying to understand the “right” way to update content in my game. I read all Addressables documentation and experimented with API, but I still have some questions.

What I’m trying to achieve (ideal case):

  • start application
  • initialize Addressables
  • check for catalog update
  • if so, update catalog
  • then check, which keys/bundles I need to update/download
  • clear cache for that keys
  • download and cache bundles

But unfortunately I can’t find the way how I can understand, which keys I need to update

The only way I found is:

  • grab the updated catalog
  • iterate over all keys and call GetDownloadSizeAsync method for each key
  • collect all keys with return value greater than zero
  • clear cache for all that keys
  • download bundles for that keys

This looks like a working option, but it also looks like not super efficient, because I have thousands of keys in my catalog.

Is there more common and not so tricky way to do that?

Thanks!

1 Like

The general idea is probably that you use groups and labels to refer to many assets at once. If that doesn’t make sense for your use case, iterating over all keys might not be such a bad idea.

1 Like

Same situation here. I couldn’t find a proper way to handle content update. After updating catalog how can I download updated and new asset bundles? Any update on this?

Hello. We’re also looking into this at the moment, and as the other have alluded to it may make sense to figure out how you want to bundle your assets first. We’re bundling by feature directory. So a pack of assets for one feature or theme and labelling that directory for that theme.

As for the catalog file, I am following you. I was testing this remotely via Google Buckets and could only seem to get the catalog update functions to work occasionally. Now my local builds are broken, so no more testing yet (in another thread). Docs are really poor on many cases, so it is a lot of trial and error.

I tested UpdateCatalog with Amazon Web Services, it looks like all works fine, at least as I expect. But question about changed keys is still here.

We had some discussions about our remote bundles design and stopped on this:

  • use labels to mark assets by some criteria (like first day content, or special location)
  • clear and download assets using labels
  • for other cases I can use way what I described in my first post