Ultimately, it was Adobe. Jobs tried at length to get Adobe to produce a Flash runtime that was efficient enough for mobile battery use, and they just wouldn't/couldn't. So he just gave up and didn't support Flash. But he had no choice because it was such a battery hog, but end users wouldn't understand and would blame Apple for poor performance.