我开发一个应用程序,我想部署iPhone 3.0,iPhone 4.0,可以在模拟模式,在iPad上运行。__IPHONE_OS_VERSION_MIN_REQUIRED请解释
我用了XCode 3.2.3开发和我有视频播放。我想用MPMoviePlayerViewController
代替> = 3.2和MPMoviePlayerController
代替< 3.2。
如果我使用
Class mplayerControllerClass = NSClassFromString(@"MPMoviePlayerViewController");
if(mplayerControllerClass != nil)
{
MPMoviePlayerViewController* moviePlayerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:movieUrl];
...
}
将与OS 3.0的iPhone能够处理的一类,它不知道?
是好把里面的代码__IPHONE_OS_VERSION_MIN_REQUIRED > 30200
ifelse块?像这样:
Class mplayerControllerClass = NSClassFromString(@"MPMoviePlayerViewController");
if(mplayerControllerClass != nil) {
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 30200
MPMoviePlayerViewController* moviePlayerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:movieUrl];
...
}
但是__IPHONE_OS_VERSION_MIN_REQUIRED
真的做什么?在我看来,它只是重复我设置为我的项目的设置:分= 3.0
只要基本SDK是新的,就可以包含新类。查看'MessageUI'的苹果示例代码:http://developer.apple.com/IPhone/library/samplecode/MailComposer/Listings/Classes_MailComposerViewController_m.html#//apple_ref/doc/uid/DTS40008865-Classes_MailComposerViewController_m-DontLinkElementID_6 – pgb 2010-07-27 19:07:57
@pgb,看起来你是对的。如果我只是使用了课堂,我想过我会记得过去发出警告。 – 2010-07-27 20:02:23