2012-02-15 36 views
1

我对info.plist文件中的“必需的设备功能”项有疑问。我需要信息plist中的短信功能吗?

在我的应用程序中,用户可以使用MFMessageComposeViewController发送短信。所以我想知道是否应该在plist中设置短信功能键。

我知道iPod Touch有iOS 5可以发送iMessages。但是,我不知道带有iMessage的iPod Touch是否可以看作是具有“短信”功能的设备。

谢谢!

回答

2

如果您的应用程序需要编写短信才能运行,请设置为需要。不过,我猜测你的应用可以在没有SMS功能的情况下正常工作。在这种情况下,请勿使用SMS,但在运行应用程序时检查可用性。如果设备可以发送消息,则允许选项这样做,否则传达给用户该功能对他们不可用。

下面是一个例子:

if ([MFMessageComposeViewController canSendText]) { 
    //present the controller 
} 
else { 
    //display an alert explaining that SMS isn't available on this device 
} 
+0

我在显示MFMessageComposeViewController之前有一个检查。但谢谢你的建议。 – Jing 2012-02-15 02:04:29

+0

然后我的建议是不需要短信,特别是如果你的应用可以用其他方式使用。 – sosborn 2012-02-15 02:10:04

1

这取决于。

如果用户无法在不支持短信的设备上使用您的应用,则应该将该功能添加到info.plit。这样,您的应用将不会安装在无法发送短信的设备上。

但是,如果用户可以使用您的应用程序,即使他们的设备无法发送短信(有其他功能,他们可以使用),你不应该添加短信功能info.plist。这样,用户就可以在无法发送短信的设备上安装您的应用。但请务必在运行时验证您是否可以在尝试使用之前发送短信。