自动拨号扩展号码的方法探讨

8次阅读
没有评论

问题描述:

如何将电话号码的扩展信息添加到联系人中,并使其能够在通话接通几秒后自动拨打此扩展号码?在Stock ICS和JellyBean版本的拨号器上,似乎有几种不同的方法可以实现这一功能,如使用逗号(,)暂停然后发送剩余数字以及分号(;)等待确认。请问是否有一种官方方法适用于所有设备和Android版本?

解决方案:

方案1:使用逗号 (,) 或分号 (;)

步骤说明与注意事项

  • 该解决方案主要应用于较为古老的版本,如Stock ICS和JellyBean。
  • 使用逗号(,)可以在拨打号码前暂停,并在发送剩余的数字之前暂停。
例如:
拨打电话号码:54321,108

其中 `108` 为扩展号码,会在拨通主号码后等待几秒自动拨打扩展号码。
  • 分号(;)可以在挂起拨打后等待用户确认再发送整个电话号码。这种方法在现代设备中较少见。
例如:
拨打电话号码:54321;108

其中 `108` 为扩展号码,需用户点击后才会发送全部数字。

方案2:通过第三方应用实现

步骤说明与注意事项

  • 大部分现代设备并未提供标准的支持,使用逗号(,)或分号(;)方法可能无效。
  • 需要依赖于第三方拨号应用程序来执行此功能。
一些第三方的应用可以通过支持高级的电话号码格式来实现这一功能。例如:
1. 首先安装第三方拨号应用(如Truecaller 等)确保其版本足够新,支持复杂的电话号码格式。
2. 在联系人信息中,将主号码与扩展号码组合后输入。具体格式可能如下:
   - `54321, 108`  (逗号隔开)
   - 或 `54321; 108` (分号隔开)

3. 在第三方APP中拨打联系人,应能自动识别并进行相应的扩展拨号操作。

方案3:定制开发应用

步骤说明与注意事项

  • 要求更高的系统或应用程序控制权。
  • 如果需要高度集成的支持自动化拨号功能的业务环境,则可以在自己开发的应用中实现此逻辑。
在业务级应用内:
1. 需要获取扩展号码并将其存储在一个特别的数字字段中。例如定义一个结构体字段名为 `extNum` 保存该扩展号码。
2. 在发起呼叫时,根据所处环境自动检查是否为预先设定有扩展号码且已连接主通路后进行二次拨号。

3. 此过程中需要考虑用户体验问题和确保在任何安卓版本上都可用的通用接口调用逻辑,并可能需要获取更多系统权限支持。

总结:尽管传统的逗号(,)或分号 (;) 方法仍然可以在一些旧版设备上工作,但在现代更加动态变化的技术环境下,依赖第三方应用或定制开发较为稳妥。选择最合适的方案取决于具体的需求、目标平台及其未来扩展性。

正文完