iOS4 中的 DTMF # 和 * 解决方法?
我已阅读所有有关 DTMF 和 iPhone 的帖子。我知道出于安全原因,SDK 不允许使用字符“#”和“*”。我尝试过 stringByAddingPercentEscapesUsingEncoding: 和 FURLCreateStringByAddingPercentEscapes 解决方法。就我而言,不可能按照一篇文章的建议生成 DTMF 音调,甚至触摸拨号表情符号也不支持 # 和 *。我还使用过 ABPeoplePicker 等。等人。并且还没有找到使用#和*的方法。 现在。我的项目中的某人发誓他使用了一个直接使用本机拨号/电话应用程序的应用程序,以便使用 # 和 * 字符。我找不到任何方法可以做到这一点。我没有找到任何 API,甚至没有找到相关的帖子。
****注意**** 如果您在通讯录应用程序中输入带有 # 或 * 的号码,它会拨出并使用 DTMF 命令。
我们的应用程序内部生成电话号码 123 123 1234,,1234#,,1234567*,,123456#;所以它不能被利用。此外,我们可以使用联系人列表创建一个格式化的号码,理论上可以满足 SDK 的安全需求。但似乎没有办法使用原生的拨号应用程序来让iOS相信我们没有恶意。 有谁知道是否有办法直接使用拨号应用以便我们可以使用DTMF命令“#”和“*”?
非常感谢。
I have read all the posts about DTMF and iPhone. I know that the characters "#" and "*" are disallowed by the SDK for security reasons. I have tried the stringByAddingPercentEscapesUsingEncoding: and the FURLCreateStringByAddingPercentEscapes workarounds. It is not possible, in my case, to generate the DTMF tones as one post suggested and even Touch Dial Emoji does not support # and *. I have also used ABPeoplePicker et. al. and have not found a way to use # and *.
Now. Some one on my project swears that he has used an app that directly employs the native dial/phone app in order to use the # and * characters. I can not find any way to do that. I have not found any APIs nor even posts about that.
****NOTE**** if you put a number in the Contacts app with a # or a * it dials out and uses the DTMF commands just fine.
Our app generates a phone number 123 123 1234,,1234#,,1234567*,,123456# internally; so it can't be exploited. Additionally we could used the contacts list to create a formatted number which in theory would satisfy the SDK security desires. But there seems to be no way to use the native dialing app in order to satisfy iOS that we are not being malicious.
Does anyone know if there is a way to directly use the dialing app so that we can use the DTMF commands "#" and "*"?
Thanks much.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以防万一这对任何人来说仍然是一个问题:事实上这是不允许的。尽管所有其他智能手机平台都允许,但苹果没有表现出改变这一点的迹象。有一些聪明的方法可以解决这个问题,但它们似乎都比黑客好不了多少。我认为最好在这个问题上让步并告诉人们这在 iOS 上是不可能的。
Just in case this is still a question for anyone: It is in fact disallowed. Apple shows not sign of changing this despite the fact that all other smartphone platforms allow it. There as some clever approches to getting around this but they all seem to be little better than hacks. I think that t's best to give in on this one and tell people that it's just not possible on iOS.
或者,您可以在电话上创建“联系人”,将 DTMF 字符串实施到联系人的拨号代码中。它将允许 * 和 #。
一旦“清理”调用完成,您就可以以编程方式删除联系人。
Altnernatively you can incorporate the creation of a "contact" on the phone, implement your DTMF string into the dial code for the contact.. it will permit * and #.
you can programmatically delete the contact once the call has been completed to "clean up".