Since <embed sound> in UIWebView html-pages does not seem to work in 2.2 (worked fine in 2.0/2.1, see my post at https://forums.macrumors.com/threads/661650/), Ive had to find another way to play sounds.
Im trying to use the MPMoviePlayerController instead, and have used the attached code below.
However, I keep getting the following errors:
----------------------------------------
"Linking /Volumes/.../myApp.app/myApp (2 errors)
(x) ".objc_class_name_MPMoviePlayerController", referenced from:
literal-pointer@_OBJC@_cls_refs@MPMoviePlayerController in myViewController.o
(x)"_MPMoviePlayerPlaybackDidFinishNotification", referenced from:
_MPMoviePlayerPlaybackDidFinishNotification$non_lazy_ptr in myViewController.o
symbol(s) not found
collect2: Id returned 1 exit status"
----------------------------------------
Does anybody have a clue to what the mumbo-jumbo in the error-message is about?
Alternatively, can you suggest a better objc-method of playing mp3-sounds (need to be mp3 because of the compression - app becomes way to big with wav/aif)?
Im trying to use the MPMoviePlayerController instead, and have used the attached code below.
However, I keep getting the following errors:
----------------------------------------
"Linking /Volumes/.../myApp.app/myApp (2 errors)
(x) ".objc_class_name_MPMoviePlayerController", referenced from:
literal-pointer@_OBJC@_cls_refs@MPMoviePlayerController in myViewController.o
(x)"_MPMoviePlayerPlaybackDidFinishNotification", referenced from:
_MPMoviePlayerPlaybackDidFinishNotification$non_lazy_ptr in myViewController.o
symbol(s) not found
collect2: Id returned 1 exit status"
----------------------------------------
Code:
// in myViewController.h
// --------------------------
#import <MediaPlayer/MediaPlayer.h>
// in myViewController.m
// --------------------------
playMovieAtURL:@"test.wav"; // calls the function playMovieAtURL, and is placed within another function.
-(void)playMovieAtURL:(NSURL*)theURL
{
MPMoviePlayerController* theMovie=[[MPMoviePlayerController alloc] initWithContentURL:theURL];
theMovie.scalingMode=MPMovieScalingModeAspectFill;
//theMovie.userCanShowTransportControls=NO;
theMovie.movieControlMode = MPMovieControlModeHidden;
// Register for the playback finished notification.
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myMovieFinishedCallback:) name:MPMoviePlayerPlaybackDidFinishNotification object:theMovie];
// Movie playback is asynchronous, so this method returns immediately.
[theMovie play];
}
// When the movie is done,release the controller.
-(void)myMovieFinishedCallback:(NSNotification*)aNotification
{
MPMoviePlayerController* theMovie=[aNotification object];
[[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:theMovie];
// Release the movie instance created in playMovieAtURL
[theMovie release];
}
Does anybody have a clue to what the mumbo-jumbo in the error-message is about?
Alternatively, can you suggest a better objc-method of playing mp3-sounds (need to be mp3 because of the compression - app becomes way to big with wav/aif)?