iOS: audio e video

L'audio e il video sono abbastanza comuni nei dispositivi più recenti. È supportato in iOS con l'aiuto diAVFoundation.framework e MediaPlayer.framework rispettivamente.

Passaggi coinvolti

Step 1 - Crea un semplice View based application.

Step 2 - Seleziona il tuo file di progetto, seleziona le destinazioni e poi dovremmo aggiungere AVFoundation.framework e MediaPlayer.framework.

Step 3 - Aggiungi due pulsanti in ViewController.xib e crea un'azione per la riproduzione rispettivamente di audio e video.

Step 4 - Aggiorna ViewController.h come segue -

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
#import <MediaPlayer/MediaPlayer.h>

@interface ViewController : UIViewController {
   AVAudioPlayer *audioPlayer;
   MPMoviePlayerViewController *moviePlayer;
}
-(IBAction)playAudio:(id)sender;
-(IBAction)playVideo:(id)sender;
@end

Step 5 - Aggiorna ViewController.m come segue -

#import "ViewController.h"

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
   [super viewDidLoad];
}

- (void)didReceiveMemoryWarning {
   [super didReceiveMemoryWarning];
   // Dispose of any resources that can be recreated.
}

-(IBAction)playAudio:(id)sender {
   NSString *path = [[NSBundle mainBundle]
   pathForResource:@"audioTest" ofType:@"mp3"];
   audioPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:
   [NSURL fileURLWithPath:path] error:NULL];
   [audioPlayer play];
}

-(IBAction)playVideo:(id)sender {
   NSString *path = [[NSBundle mainBundle]pathForResource:
   @"videoTest" ofType:@"mov"];
   moviePlayer = [[MPMoviePlayerViewController 
   alloc]initWithContentURL:[NSURL fileURLWithPath:path]];
   [self presentModalViewController:moviePlayer animated:NO];
}
@end

Nota

Dobbiamo aggiungere file audio e video per assicurarci di ottenere l'output previsto.

Produzione

Quando eseguiamo l'applicazione, otterremo il seguente output:

Quando facciamo clic su Riproduci video, otterremo un output come mostrato di seguito -

Quando facciamo clic su Riproduci audio, sentirai l'audio.