2012-04-27 9 views
0

私のアプリケーションでは、ショールームの詳細として名刺を表示しています。その詳細で私はユーザーに電話のオプションを与えている。xcodeコードでiPod touchの電話ボタンを無効にするにはどうすればいいですか?

iPhoneから、私たちは... follwesようなコードを与えることによって、それぞれの番号に

NSString* call = [NSString stringWithFormat:@"tel:%@",phone_number]; 
NSURL* url = [[NSURL alloc] initWithString:[call stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
[[UIApplication sharedApplication] openURL:url]; 

を呼び出すことができますが、iPodのから、私たちは、それぞれの番号に電話を与えることができないと思います。

iPhoneとiPodのアプリケーションを起動したいのですが、必要なデバイス機能を「テレフォニー」に設定すると、アプリケーションはiPodで動作しません。必要なデバイスの機能が電話やアプリをそのまま提出することについて言及していない場合、アップルの審査プロセスには問題ありませんか? これは、機能のないiPodの電話ボタンを持っています....

あなたがiPodにアプリケーションをインストールする場合は、電話ボタンを無効にしてテキストをプログラムで変更する方法はありますか? Plzが提案する

答えて

1

正常に機能しなくなった場合、あなたのアプリはガイドラインに違反しないと思います。あなたは、あなたのアプリがそれなしで実行することを完全に拒否した場合、デバイス能力要件を宣言する必要があります。

iOS App Programming Guide(強調鉱山)から:あなたのアプリがを実行するために、特定のデバイスの機能の有無を必要とする場合

、アプリの情報でUIRequiredDeviceCapabilitiesキーを使用して、これらの要件を宣言する必要があります。 plistファイル。実行時に、宣言された機能がデバイスに存在しない限り、iOSはアプリを起動できません。それはユーザデバイスの要件のリストを生成し、彼らはアプリがtel://のURLに対応できるかどうかを判定するための

を実行することはできませんアプリケーションをダウンロードすることからユーザーを防ぐことができるようにさらに、App StoreはHow do I test if IOS device has telephone capabilities? を参照してください、この情報を必要とします基本的にcanOpenURLを使用して電話をかけることができるかどうかを判断します。

+0

「名刺の連絡先を保存する」ボタンもあります。私はiPodのデバイスplzをテストするために持っていないので、それはOKですか? –

+0

[iPodタッチ](http://www.apple.com/ipodtouch/built-in-apps/more-built-in-apps。 html)には連絡先アプリがありません。テストのためにiPod Touch(3rd gen)を購入することを検討したいかもしれませんが、中古のものはeBayなどで非常に安価です。 – ckhan

1

デバイスがtel:のURLを開き、そうでない場合は電話ボタンを隠すことができるかどうかを確認できます。

BOOL canCall = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel:123456789"]]; 
関連する問題