MPMoviePlayerController ne fonctionne pas sous iOS 5 xcode (avec storyboard), mais fonctionne parfaitement sous iOS 4
Je vais avoir des problèmes pour la lecture d'un film avec le nouveau xcode qui est livré avec iOS 5 beta. J'ai créé un projet simple (avec les storyboards et tout et tout), et a ajouté ce code pour un bouton:
MPMoviePlayerController *moviePlayer;
NSString *path = [[NSBundle mainBundle] pathForResource:@"position" ofType:@"m4v"];
NSURL *videoURL = [NSURL fileURLWithPath:path];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];
//[moviePlayer setControlStyle:MPMovieControlStyleDefault];
[moviePlayer.view setFrame: self.view.bounds]; //player's frame must match parent's
[self.view addSubview: moviePlayer.view];
[moviePlayer prepareToPlay];
[moviePlayer play];
La confusion de la chose est qu'il fonctionne parfaitement lorsque je lance le code dans un projet construit avec une précédente version de xcode (en particulier, celle qui est livré avec iOS 4.3).
Des idées?
- iOS 5 est sous NDA. Veuillez discuter de cela dans le Forums de Développeurs Apple.
- le point est bien pris en
- Aussi avoir des problèmes avec MPMoviePlayer && iOS 5.0
Vous devez vous connecter pour publier un commentaire.
Nouveau à Objective-C, mais je vais vous donner une chance. Avec Xcode 4.2 (qui offre de code pour iOS5), par défaut, les nouveaux projets ont d'ARC (Automatic Reference Counting) est activée. Pour le code que vous a donné, puisque vous déclarez la moviePlayer à l'intérieur de ce bloc de code, moviePlayer est automatiquement relâché quand il sort du bloc. Dans les projets plus anciens, moviePlayer serait juste s'attarder sur, ce qui pourrait créer une fuite de mémoire. Je l'ai eu à travailler avec la valeur par défaut Xcode 4.2 ARC paramètre est activé en déclarant moviePlayer dans le fichier d'en-tête de la classe, ce qui signifie qu'il est libéré que lorsque l'objet de l'instance de cette classe est libéré.
le mettre sur l'en-tête (.h) du fichier et son travail
J'ai trouvé la solution dans ce code:
Essayez ceci..il fonctionne sous iOS 5. Vous pouvez modifier le code pour jouer avec une IBAction bouton. Bonne chance
J'ai eu un problème similaire sur iOS 5 avec MPPlayerController et j'ai vérifié Apple l'exemple du projet, la différence n'était que de réglage de l'image j'ai donc mis en image manuellement et cela a fonctionné parfaitement.