I have an HTC Desire, and the default YouTube app does not cache the video after it plays the first time. The second time you play, it downloads the same video a second time, but I would like to cache the video on the memory card.
Is there any way to do this with the default YouTube app? If not, is there a third-party app that can do something like this?
Google's YouTube app has an option to preload videos that are either in a channel you are subscribed to or that are in your "watch later" list. I haven't tested this but I think it will keep a video that you have preloaded cached for a while after you watched it for the first time.
I would think, that videos are not cached because of memory constraints on mobile devices.
Software developers have to design and implement software that works for the great majority of users. Perhaps adding an intelligent (device agnostic) cache function is not on the top of functionality they want to implement right now.