我需要在多个SIM设备上检测来电的目标SIM卡.我已经厌倦了很多帖子,并尝试了许多解决方案,但所有的解决方案都过时了.不适用于Android的新版本.
我尝试了下面的解决方案,没有任何帮助
int simSlot = intent.getIntExtra("simSlot", -1);
int simId = intent.getIntExtra("simId", -1);
int slot = intent.getIntExtra("slot", -1);
全部都是returns -1
String[] array = new String[]{
"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"
};
for (String item :
array) {
Log.i(TAG, "Sim Card - " + item + " -----> " + intent.getExtras().getInt(item));
}
输出始终为returns 0
一些文章显示这是不可能的。但TrueCaller显示所有android手机中所有来电的目标sim卡。
我想知道这样的解决方案
我试了这么多方法没有帮助.任何帮助将高度appriciated.提前感谢
2条答案
按热度按时间bxgwgixi1#
您可以尝试在BroadcastReceiver类中执行此操作,
qzlgjiam2#
您可以使用
SubscriptionInfo
类尝试以下解决方案。注册PhoneStateListener,