2013-08-12 54 views
0

我们是否可以上传多个“.app”文件,每个文件适用于不同的操作系统版本,例如版本10.7我有不同的应用程序版本,其功能仅支持10.7及更高版本,而支持10.8具有1.8及更高版本支持的功能的不同应用程序? 我的下一个问题是否可能比Mac App Store应用程序足够智能,以根据他/她的操作系统版本为用户提供该版本(如果使用10.7以下的应用程序,请下载10.7版本的应用程序,如果用户有10.8以下的应用程序,请下载10.8版本的应用程序在用户机器上)? 类似的是可用于iOS(例如iOS 6和iOS 5等)? 如果不是Apple有计划在iOS和Mac应用商店中实现这些功能吗?为不同的操作系统版本上传多个可执行文件

回答

0

简短的回答是否定的。

你真的想动态地做到这一点。例如,你可以弱连接框架并测试一个特定的objc类的存在。

gcc -weak_framework AVFoundation source.m 

if (NSClassFromString(@"AVCaptureSession")) { 
    // do stuff with AVFoundation here 
} 

您还可以测试以查看特定对象是否响应您要使用的选择器。

if ([myObject respondsToSelector:@selector(selectorYouWantToUse:)]) { 
    [myObject selectorYouWantToUse:@"indeed"]; 
} 

有时候这些都不做正确的事情,在这种情况下,你可以检查在

/System/Library/CoreServices/SystemVersion.plist 

文件,我觉得它有用的功能与签名

bool macOSXVersionIsAtleast(int major, int minor, int bugfix); 
这个包起来

(实施留给读者)。

相关问题