[英]Making a call from a dual sim android device using adb
我正在尝试使用 adb 从双卡手机(SIM 0 和 SIM 1)上的特定卡拨打电话,但我不知道如何将呼叫定向到该特定卡插槽。 到目前为止,我已尝试使用以下命令拨打电话:
adb shell am start -a android.intent.action.CALL -d tel:XXXXXXXXXX
这工作正常,但它总是使用 SIM 0 调用。
我尝试使用 radiooptions 作为:
adb shell radiooptions
但事实证明,此特定设备不支持 radiooptions。
/system/bin/sh: radiooptions: not found
我确实在另一台不是双卡的设备上尝试过,而且 radiooptions 似乎可以解决这个问题。 这就是我首先尝试 radiooptions 的全部原因,因为它有一个非常明确的选择特定 sim 卡的实现。
无论如何,我发现了以下双卡安卓手机的问题,但它们不是基于 adb 的。 它们都是 Java 问题。
他们似乎有所帮助并提供了一些关于如何完成的线索,尤其是这个:
这与我需要的非常接近,但我不知道如何将其转换为命令提示符友好代码。
上述链接中使用的方法“意图”在此处有文档:
https://developer.android.com/reference/android/content/Intent.html
Multi sim android官方文档: https : //developer.android.com/about/versions/android-5.1.html#multisim
任何帮助是极大的赞赏。
SIM卡只是一个容器。 电话用来注册网络和拨打电话的实体名称是SubscriberID 。 一张 SIM 卡可能包含多个SubscriberID 。
因此,与其询问如何从另一张 SIM 卡拨打电话,您应该询问如何使用 SubscriberID 而非默认用户 ID 拨打电话- 此其他SubscriberID是存储在同一张 SIM 卡上还是另一张 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
。
谢谢! 它在调用和数据命令上都非常有效,使用get进行读取,而put进行更改。
东西这里要注意的是,对于SIM1返回使用获得的2值和SIM2具有为4的值,0为AskMeAlways选项的值,当我试图把其他的数字,而不是(2,4) ,当您用get读回它们时,它会保留它们,但会选择手机中的AskMeAlways选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.