Xcode 4.2 "_OBJC_CLASS_$_MPMoviePlayerViewController 编译不通过

本文解决在Objective-C项目中引入MediaPlayer框架时遇到的编译问题,包括引入MediaPlayer.framework、处理编译警告及错误,确保项目成功编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import "ViewController.h"




@implementation ViewController




-(void)moviePlayerDidFinish:(NSNotification *) aNote{


MPMoviePlayerController*player=[aNote object];
[[NSNotificationCenterdefaultCenter] removeObserver:self
                                               name:MPMoviePlayerPlaybackDidFinishNotification
                                               object:player];
    [player stop];

//[self dismissMoviePlayerViewControllerAnimated];
//[playerViewController release];









}


-(void)buttonClicked:(id)sender{

NSString*filePath=[[[NSBundlemainBundle] resourcePath] stringByAppendingPathComponent:@"b.mov"];
   NSURL *movieURL=[NSURL fileURLWithPath:filePath];

playerViewController=[[MPMoviePlayerViewControlleralloc]initWithContentURL:movieURL];
[[NSNotificationCenterdefaultCenter] addObserver:self
                                            selector:@selector(moviePlayerDidFinish:)
                                                name:MPMoviePlayerPlaybackDidFinishNotification
                                              object:nil];

[selfpresentMoviePlayerViewControllerAnimated:playerViewController];    



     }


老是报错呀,编译就不通过,怎么办?


MediaPlayer.framework 已经引入了,就是编译不通过。想了一个下午了


ld: warning: ignoring file /Users/user/自己的程序/MoviePlayer/MediaPlayer.framework/MediaPlayer, file was built for unsupported file format which is not the architecture being linked (i386)
Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_MPMoviePlayerViewController", referenced from:
      objc-class-ref in ViewController.o
  "_MPMoviePlayerPlaybackDidFinishNotification", referenced from:
      -[ViewController moviePlayerDidFinish:] in ViewController.o
      -[ViewController buttonClicked:] in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)


错误信息好像是找不到MPMoviePlayerPlaybackDidFinishNotification一样的,可是我的framework真的引入了,好像framework的引入菜单变了,还是我引入的方法不对?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值