To find out which part of your executable requires this symbol, disable link with MediaPlayer.framework
and look for the libraries which generates a link error with symbol MPMoviePlayerContentPreloadDidFinishNotification
. After you find out who is guilty, you can update or remove this library from your project.
In my case it was old version of flurry:
Undefined symbols for architecture armv7:
"_MPMoviePlayerContentPreloadDidFinishNotification", referenced from:
-[FlurryVideoPlayer playVideo:view:ad:] in libFlurryAds.a(libFlurryAds.a-armv7-master.o)
-[FlurryVideoPlayer moviePreloadDidFinish:] in libFlurryAds.a(libFlurryAds.a-armv7-master.o)
I updated flurry to the latest version and checked that it's not requires anymore MPMoviePlayerContentPreloadDidFinishNotification
symbol. Problem was solved.