Ciao a tutti oggi andremo a vedere come è possibile riprodurre un file mp3 all’interno di una nostra applicazione .
Iniziamo subito a creare un nuovo progetto di tipo view based application e diamogli come nome Musica, per prima cosa aggiungiamo il Framework AVFoundation
1)Andiamo sul file MusicaViewController.h e inseriamo questo codice :
[code lang=”objc”]
#import <UIKit/UIKit.h>
#import<AVFoundation/AVFoundation.h>//Importiamo
@interface MusicaViewController : UIViewController<AVAudioPlayerDelegate>{//Importiamo questo delegate per controllare la riproduzione audio
AVAudioPlayer *player;
}
-(IBAction)Play;
-(IBAction)Stop;
@end
[/code]
Ora andiamo inseriamo manualmente il file mp3 che desideriamo riprodurre proprio come facevamo con le foto (ricordatevi di spuntare l’opzione copy items into destination group’s folder)
E’ giunto il momento di implementare il codice vero e proprio dunque andiamo nel file.m e scriviamo questo codice :
[code lang=”objc”]
-(IBAction)Play{
NSString *resourcePath=[[NSBundle mainBundle]resourcePath];
resourcePath=[resourcePath stringByAppendingString:@\”/canzone.mp3\”];
player=[[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL fileURLWithPath:resourcePath ]error:nil];
[player setDelegate:self];
[player play];
}
-(IBAction)Stop{
[player stop];
}
-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag{
[player release];
}
-(void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer *)player error:(NSError *)error{
NSLog(@\”Errore\”);
}
-(void)audioPlayerBeginInterruption:(AVAudioPlayer *)player{
NSLog(@\”fermato\”);
}
-(void)audioPlayerEndInterruption:(AVAudioPlayer *)player withFlags:(NSUInteger)flags{
NSLog(@\”Ripreso\”);
}
[/code]
Ora non ci resta che andare sul file.xib e creare l’interfaccia grafica.
Non dobbiamo far altro che inserire i 2 bottoni uno per Play e uno per stop e fare i collegamenti dal file’s owner (mi raccomando come opzione scegliere touch up inside)
Come possiamo notare è tutto realmente molto semplice un saluto da parte di tutto lo staff di
Download Progetto Link