Checking if Addressable Assets are Valid

How do I verify if all my assets are downloaded correctly?

What I am doing right now: checking if the catalog needs update using CheckForCatalogUpdates. If it needs update, update the catalogs using UpdateCatalogs. When that is done, get the keys of assets in the updated catalog, and call DownloadDependenciesAsync.

My question is: what if the catalog is updated and the downloading failed? For instance, if the user force quit the game when the download is halfway, and opens it again. Would the catalog be updated already while the assets not available? And the assets only start downloading when it is actually used?

I am also having difficulty figuring out how to properly do this. We manage our own downloads via a different application and I would like to validate that the bundles were properly downloaded when players launch their clients.

Yes, if the Catalog was updated, that is now the cached catalog version. Unless you do another Download pass, then any requested Assets that have not yet been downloaded later down the line will be downloaded on demand.