此问题在此处已有答案:
十二年前就关门了。
可能重复:
How to check iOS version?我正在构建一个具有SMS编写器的应用程序(在3.0中不可用)。如何动态查找底层设备的操作系统版本并使SMS选项可用,以及如何禁用该功能?
0ve6wy6x1#
这是一段代码,它将给予您有关设备的所有信息
NSLog(@"uniqueIdentifier: %@", [[UIDevice currentDevice] uniqueIdentifier]); NSLog(@"name: %@", [[UIDevice currentDevice] name]); NSLog(@"systemName: %@", [[UIDevice currentDevice] systemName]); NSLog(@"systemVersion: %@", [[UIDevice currentDevice] systemVersion]); NSLog(@"model: %@", [[UIDevice currentDevice] model]); NSLog(@"localizedModel: %@", [[UIDevice currentDevice] localizedModel]);
字符串你可以在这里找到版本号。但我会建议你去检查手机支持邮件 composer ,短信或不喜欢System. out. println(@“System. out. println”);
if (messageClass != nil) { // Check whether the current device is configured for sending SMS messages if ([messageClass canSendText]) { MFMessageComposeViewController *msgpicker = [[MFMessageComposeViewController alloc] init]; msgpicker.messageComposeDelegate = self; msgpicker.recipients = [NSArray arrayWithObject:[self.productInfoArray valueForKey:@"Phone"]]; // your recipient number or self for testing msgpicker.body = @"test from OS4"; NSLog(@"chat view array %@",[self.productInfoArray valueForKey:@"Phone"]); [self presentModalViewController:msgpicker animated:YES]; [msgpicker release]; NSLog(@"SMS fired"); } else { NSLog(@"chat view array %@",[self.productInfoArray valueForKey:@"Phone"]); NSLog(@"Device not configured to send SMS.") ; UIAlertView *alert= [[UIAlertView alloc]initWithTitle:@"Status" message:@"Device not configured to send SMS." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:@"cancel",nil]; [alert show]; [alert release]; } }
型这将有助于解决您的问题。快乐编码干杯。。
7d7tgy0s2#
UIDevice类有一个systemVersion属性,你可以用它来获取操作系统的版本。这将返回版本值,比如3.1或4.2。我想你可以用它来确定对短信功能的访问。
@property (nonatomic, readonly, retain) NSString *systemVersion
字符串更多信息请查看参考资料> http://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html
yr9zkbsy3#
我想你可以用NSClassFromString(@"MFMessageComposeViewController")来看看这个类是否可用。(警告:你不能用这种方式检查UIGestureRecognizer,因为Apple使用了同名的私有类。MFMessageComposeViewController也可能是这样。)
NSClassFromString(@"MFMessageComposeViewController")
UIGestureRecognizer
MFMessageComposeViewController
3条答案
按热度按时间0ve6wy6x1#
这是一段代码,它将给予您有关设备的所有信息
字符串
你可以在这里找到版本号。
但我会建议你去检查手机支持邮件 composer ,短信或不喜欢
System. out. println(@“System. out. println”);
型
这将有助于解决您的问题。快乐编码干杯。。
7d7tgy0s2#
UIDevice类有一个systemVersion属性,你可以用它来获取操作系统的版本。这将返回版本值,比如3.1或4.2。我想你可以用它来确定对短信功能的访问。
字符串
更多信息请查看参考资料> http://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html
yr9zkbsy3#
我想你可以用
NSClassFromString(@"MFMessageComposeViewController")
来看看这个类是否可用。(警告:你不能用这种方式检查
UIGestureRecognizer
,因为Apple使用了同名的私有类。MFMessageComposeViewController
也可能是这样。)