Android& iOS访问号码拨号

时间:2011-08-01 13:01:15

标签: android ios phone-call

我对这两种操作系统都很陌生,所以如果我的问题是基本的,请原谅我: - )

我们正在计划一个安全的拨号系统,这意味着在一个电话号码会议中拨打2个号码。

目前我们有一个系统允许我们拨打接入号码,等待提示音,然后拨打完整的电话号码。

这有点精心,但就像我说的那样,这是一个安全功能。

我们现在要做的是创建Android和iPhone应用程序,只需点击一个虚拟按钮,我们就可以拨打访问号码+电话号码: - )

有谁可以告诉我如何通过编程方式实现这一目标?我需要实施类似 access-number#phone-number 或任何可行的方式。

感谢。

2 个答案:

答案 0 :(得分:2)

iphone和android都支持以同样的方式拨打电话。

您需要构建一个URL并“运行”该网址。 iphone和android都不支持任何类型的呼叫控制,所以你必须使用url来打电话。它们都支持网址中的“暂停”字符和dtmf音调。

iphone不支持某些字符,特别是'#'和'*'字符。由于不支持“#”字符(出于安全原因),因此很难处理PBX系统。

在Android上你必须手动或使用URLEncoder'编码'字符。我没有运气支持Android中的'#'字符,但我看到它的工作报告。您需要对此进行测试以确定它是否适合您。

对于iphone,您可以使用UIApplication openURL:tel link

e.g。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:123456p12345"]];

对于Android,您可以使用INTENT_DIALACTION_CALL

INTENT_CALL将显示电话拨号器,并填写您的电话号码。它不需要任何特殊设置。

e.g。

Intent dialIntent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:123456"));
startActivity(dialIntent);

ACTION_CALL需要清单文件中的CALL_PHONE权限。 e.g。

的AndroidManifest.xml:     

Intent dialIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:123456%2C12345"));
startActivity(dialIntent);

答案 1 :(得分:1)

我不太确定这是不是你想要的,但是。

您可以在布局中创建一个按钮。 在主活动// findViewById();

中创建指向它的指针

按钮上的OnClickListener。

在onClick中,用一个选择的数字激活一个Dial Intent。

如果这不是您正在寻找的东西,我恐怕我需要更多关于它究竟是什么的信息,因为在这一点上,这是我能够设想的唯一一个给出的描述