【问题标题】:Android & iOS access number dialingAndroid & iOS 接入号码拨号
【发布时间】:2011-08-01 13:01:15
【问题描述】:

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

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

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

这有点复杂,但就像我说的,这是一项安全功能。

我们现在要做的是创建 Android 和 iPhone 应用程序,使我们能够通过点击虚拟按钮拨打访问号码 + 电话号码 :-)

谁能告诉我如何以编程方式实现这一点?我需要实现类似 access-number#phone-number 之类的东西或任何可行的东西。

谢谢。

【问题讨论】:

    标签: android ios phone-call


    【解决方案1】:

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

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

    iphone 不支持某些字符,尤其是“#”和“*”字符。因为不支持“#”字符(出于安全原因),它会使处理 PBX 系统变得困难。

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

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

    例如

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

    对于 android,您使用 INTENT_DIALACTION_CALL

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

    例如

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

    ACTION_CALL 需要您的清单文件中的CALL_PHONE 权限。 例如

    AndroidManifest.xml:

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

    【讨论】:

      【解决方案2】:

      我不太确定这是否是您要查找的内容。

      您可以在布局中创建一个按钮。 在你的主要活动中创建一个指向它的指针 // findViewById();

      按钮上的 OnClickListener。

      在 onClick 中,使用选择的号码触发 Dial Intent。

      如果这不是您要找的东西,恐怕我需要更多关于它的真实情况的信息,因为在这一点上,根据给出的描述,这是我唯一能想到的.

      【讨论】:

      • 感谢 Androider。问题不仅仅是拨打一个号码。它在一个程序化的 Android 拨号操作中同时拨打号码并输入密码。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多