次の2種類のコードを試してみました。
実行時間:
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 4.0) {
CFReadStreamSetProperty(theReadStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
CFWriteStreamSetProperty(theWriteStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
}
コンパイル時間:
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_4_0 {
CFReadStreamSetProperty(theReadStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
CFWriteStreamSetProperty(theWriteStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
}
kCFStreamNetworkServiceType
およびkCFStreamNetworkServiceTypeVoIP
はiOS4.0で提供される定数です。ただし、いくつかの理由により、iOS3.1を搭載したデバイスに上記のコードを組み込む必要があります。上記のコードをiOS3.1を搭載したデバイスに組み込むと、アプリケーションを開いたときにクラッシュします。問題を解決する方法はありますか?