【问题标题】:Making a call from a dual sim android device using adb使用 adb 从双卡 android 设备拨打电话
【发布时间】:2017-04-27 18:37:27
【问题描述】:

我正在尝试使用 adb 从双 sim 手机(SIM 0 和 SIM 1)上的特定 sim 拨打电话,但我不知道如何将呼叫定向到该特定 sim 插槽。 到目前为止,我已经尝试使用以下命令拨打电话:

adb shell am start -a android.intent.action.CALL -d tel:XXXXXXXXXX

这工作正常,但它总是使用 SIM 0 调用。

我尝试使用单选选项:

adb shell radiooptions

但事实证明,此特定设备不支持单选选项。

/system/bin/sh: radiooptions: not found

我确实在另一台设备上尝试过,这不是双卡,而且无线电选项似乎可以解决这个问题。这就是我首先尝试无线电选项的全部原因,因为它有一个非常明确的实现来选择特定的 sim 卡。

无论如何,我发现了以下关于双卡安卓手机的问题,但它们不是基于 adb 的。都是Java问题。

Make call using a specified SIM in a Dual SIM Device

Call from second sim

他们似乎提供了帮助并提供了一些关于如何完成的线索,尤其是这个:

SO Answer for changing SIM

这和我需要的很接近,但是我不知道如何将它转换成命令提示符友好的代码。

上述链接中使用的方法“intent”在此处有文档:

https://developer.android.com/reference/android/content/Intent.html

Multi sim android 官方文档: https://developer.android.com/about/versions/android-5.1.html#multisim

非常感谢任何帮助。

【问题讨论】:

    标签: android adb dual-sim


    【解决方案1】:

    SIM 卡只是一个容器。电话用来注册网络和拨打电话的实体名称是SubscriberID。一张 SIM 卡可能包含多个 SubscriberIDs

    因此,与其询问如何从另一张 SIM 卡拨打电话,您应该询问如何使用非默认的 SubscriberID 拨打电话 - 是否其他SubscriberID 存储在同一张或另一张 SIM 卡上几乎无关紧要。

    我不知道是否有办法为单个呼叫指定不同的 SubscriberID。但是您应该可以在通话之前设置一个新的默认 SubscriberID,然后再将其恢复。

    要找出当前的 ID 值运行:

    adb shell settings get global multi_sim_voice_call
    

    然后通过 UI 更改活动订阅者并再次运行命令以获取另一个 ID。

    调用前使用该命令切换到合适的ID:

    adb shell settings put global multi_sim_voice_call <ID>
    

    要更改 data 呼叫设置 - 使用 multi_sim_data_call 而不是 multi_sim_voice_call

    【讨论】:

    • 谢谢!我对其进行了测试,并且效果很好。并感谢您的解释。我不知道很多这样的东西。你知道我在哪里可以找到这方面的文档吗?例如,我也想尝试多卡短信,在谷歌搜索后,我发现“multi_sim_sms”就像“multi_sim_voice_call”一样,但我找不到任何官方文档。如果你能给我一个链接,那将不胜感激。再次感谢。:-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多