Introduction
...
Current version of spine ecar is bundled with manifest.json (details of the TextBook and its units) and folders for all the contents (holding the thumbnail images) and Menifest.json contains the relative path of all the thumbnails as appicon. Since all the thumbnail images are already present in the bundle, sometime (if hierarchy is big) ecar size is becoming huge which needs more bandwidth for downloading the ecar.
Problem Statement
Download the light weight ecar for any content which mymeType is 'application/vnd.ekstep.content-collection' and when user visits the content detail for any content inside that TextBook/Collection then download the appIcon to make it available locally and add that appIcon as part of ecar.
...
Exporting of light weighted spine ecar (including the downloaded thumbnail images):
Solution 1:
If appIcon is having image URL ("appIcon": "<Azure/S3 path>/1db4c446ed0425fdd694cad0ca8e1c80_1496381357005.thumb.jpeg")
- When user explore the content then download the thumbnail image for that individual content in the existing content folder.
- After downloading the thumbnail image update the appIcon (as light weighted ecar is having the image URL) value with the relative path.
- Bundle the downloaded thumbnail image as a part of exported ecar for that TextBook/Collection.
Solution 2:
If appIcon is having relative path ("appIcon": "do_31268439334042828814811/1db4c446ed0425fdd694cad0ca8e1c80_1496381357005.thumb.jpeg") and base URL for azure/s3.
- When user explore the content then download the thumbnail image for that individual content in the existing content folder.
- After downloading the thumbnail image no need to update the appIcon (assuming relative path and base URL will be separately in content metadata).
- Bundle the downloaded thumbnail image as a part of exported ecar for that TextBook/Collection.