アプリから電話をかける必要があります。番号は、電話番号とハッシュタグに続くパスコードの2つの数字で構成されます。 しかし、一部のユーザーは、番号の末尾に二重のハッシュタグを配置する必要があり、それが一度にそのURLを呼び出しているときには、アプリケーションをクラッシュ:それは働いて、単一のハッシュタグ付きopenURL()のダブルハッシュタグでアプリがクラッシュする
UIApplication.sharedApplication().openURL(NSURL (string: "tel//:1111111,,222##"))
、上のハッシュタグを押すことが可能ですデバイスの後のキーボードはすでにダイヤルしています。私はASCIIテーブルを追加しようとしました - 16進数、23(意味する) - それは役に立たなかった。
EDIT:
スワップにこのようなハッシュタグ行いlet encodedHost =
numberToDial.stringByAddingPercentEncodingWithAllowedCharacters(.URLHostAllowedCharacterSet())
:
しかし、この番号に電話しようとしている私が何かhereを見つけた
(NSURL) - アプリはまだクラッシュします。どうすればURLの最後に二重のハッシュタグを作成し、アプリをクラッシュさせることはできますか?
私の場合は正しくあります。 let nsurr = NSURL(string: "\(self.callOptions.devicephoneURL )\(numberToDial) ")!しかし、私は "!"を取り除くことはできません –
更新する前に表示するように私のコードを更新しました。この方法で、少なくともアプリケーションのクラッシュを避けることができます。しかし、2つのハッシュタグを許可するにはどうすればよいですか? (これの利点:番号の末尾にダブルハッシュタグを置くとイントロ音声をスキップします) –
できません。上に貼り付けたドキュメントリンクを読んでください。 (私はOlegも答えを貼り付けているのを見ています)。セキュリティ上の理由から、Apple **は '' tel: 'URL **の'# 'を完全にサポートしていません。なぜあなたが '!'を必要としたのか、私のコードがそれを修正した理由は、これを見てください:http://stackoverflow.com/questions/24018327/what-does-an-exclamation-mark-mean-in-the-swift-言語/ 33399973#33399973 –