gpt4 book ai didi

android - 使用双 SIM 卡设备中的指定 SIM 卡调用电话

转载 作者:IT老高 更新时间:2023-10-28 23:24:02 25 4
gpt4 key购买 nike

过去几天我一直在寻找这个,我才知道:

“Android开箱即用不支持双卡,是厂商自定义修改,没有公共(public)API控制。”

以下链接中提供了一个解决方案,但它不适用于我的手机三星 Galaxy S4 Mini。

Call from second sim

我还发现了这个链接,我发现它非常有用。

http://www.devlper.com/2010/06/using-android-telephonymanager/

现在我知道,使用以下代码,我可能有机会幸运地让它工作:

Intent callIntent = new Intent(Intent.ACTION_CALL)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
callIntent.setData(Uri.parse("tel:" + phone));
context.startActivity(callIntent);
callIntent.putExtra("com.android.phone.extra.slot", 0); //For sim 1
and
callIntent.putExtra("com.android.phone.extra.slot", 1); //For sim 2

对此我不确定,但我有一个问题。

在 SIM 卡管理器部分下的设置中,当我必须为语音通话选择首选 SIM 卡时,我有四个选项:

  1. 当前网络
  2. 总是询问
  3. SIM 1
  4. SIM 2

当我选择“始终询问”选项时,在调用电话之前,我总是被要求选择显示在对话框中的 SIM 卡来调用电话。我的问题是我可以在我的应用程序中利用这个东西,我按下一个按钮调用电话,但它总是以与我选择“始终询问”选项时相同的方式询问我。

对不起,我把这个问题说得太长了,但我认为它需要它。请提前提供帮助并非常感谢。

编辑:

我怎样才能做到这一点,每次我按下任何按钮(有点类似于“设置”中的“始终询问”选项): Select SIM Dialog Box

最佳答案

代码:

private final static String simSlotName[] = {
"extra_asus_dial_use_dualsim",
"com.android.phone.extra.slot",
"slot",
"simslot",
"sim_slot",
"subscription",
"Subscription",
"phone",
"com.android.phone.DialingMode",
"simSlot",
"slot_id",
"simId",
"simnum",
"phone_type",
"slotId",
"slotIdx"
};


Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + "any number"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("com.android.phone.force.slot", true);
intent.putExtra("Cdma_Supp", true);
//Add all slots here, according to device.. (different device require different key so put all together)
for (String s : simSlotName)
intent.putExtra(s, 0); //0 or 1 according to sim.......

//works only for API >= 21
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
intent.putExtra("android.telecom.extra.PHONE_ACCOUNT_HANDLE", (Parcelable) " here You have to get phone account handle list by using telecom manger for both sims:- using this method getCallCapablePhoneAccounts()");

context.startActivity(intent);

关于android - 使用双 SIM 卡设备中的指定 SIM 卡调用电话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25524476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com