I'm adding a MPMoviePlayerController
as background view and while it plays I get spams of the log-message 'Received memory warning'. I don't now why, and maybe there is a workaround or a better solution.
Here is my code:
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[[self navigationController]setNavigationBarHidden:YES animated:YES];
[moviePlayer play];
}
- (void) viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
[moviePlayer pause];
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
//self.view.backgroundColor = [UIColor appStyleLightOrangeColor];
//Add Video playback
NSBundle *bundle = [NSBundle mainBundle];
NSString *moviePath = [bundle pathForResource:@"happy-female-friends-smartphon" ofType:@"m4v"];
NSURL *movieURL = [NSURL fileURLWithPath:moviePath];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
moviePlayer.controlStyle = MPMovieControlStyleNone;
moviePlayer.shouldAutoplay = YES;
moviePlayer.repeatMode = MPMovieRepeatModeOne;
moviePlayer.fullscreen = YES;
moviePlayer.movieSourceType = MPMovieSourceTypeFile;
moviePlayer.scalingMode = MPMovieScalingModeAspectFill;
//set the frame of movie player
moviePlayer.view.frame = self.view.bounds;
[self.view insertSubview:moviePlayer.view atIndex:0];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(appBecameActive)
name:UIApplicationDidBecomeActiveNotification
object:nil];
[self performSelector:@selector(animationCode) withObject:nil afterDelay:0.1f];
}
-(void)appBecameActive{
[moviePlayer play];
}
Thannks first to @tdevoy for your advices.
I finally got rid of the warning. It was the file type! I had to convert it to .3gp
and now it works much smoother and without warnings.
On strange thing is I even use now 4mb more memory than before. But everything works great..