I have about 100 GIFs in the main bundle. I'm loading everything during viewDidLoad() in an array. This array is the datasource for the UICollectionView. The problem is that these GIFs are taking a lot of memory which is causing slowness and lead to app crash due to memory. When I start scrolling, the memory debugger shows up to 800 mb+ and then crashes.
I considered integrating 3rd-party libraries to optimize the GIFs performances. Then I thought about creating some sort of local caching solution where I can offload memory and fetch data when needed in the background once the cell goes offview. Is this a right approach or am I overcomplicating things?