if the H5P package is inside an H5P activity and it's configured to enable attempt tracking, then the app should store the data in offline. Please notice there was a bug in Moodle
, if you embedded an H5P activity somewhere else then it didn't store the grades, and it's possible that the same happens in the app (we still need to review it).
About content being slow to load, sometimes we need to "invalidate" the prepared H5P content so it's rebuilt when the user plays it. For example, some language strings are "cached" in the prepared files so changing the app's language will force all H5P packages to be rebuilt when they're played. Another case is when two packages share a same library but the second one has a more recent version, when you download
the package with a more recent library the package with the old library is "invalidated" to use the new one. Rebuilding these files doesn't require network connection, but it can be slow. If the files are already built then the package should start fast, but if it's a complex package and he device is slow maybe it takes a bit to load everything it need.
I didn't find the case where a downloaded package wasn't displayed, does it happen often to you? Do you know if it happens in several devices or it's always in the same device?