Обнаружить мишень номер телефона при входящем звонке он для СИМ 1 или сим 2?


У меня есть телефон Android с 2 SIM-картами, и я хочу определить цель входящего вызова - это для SIM 1 или для SIM 2. Можно ли получить целевой номер из информации о вызове?

3 6

3 ответа:

Наконец я получил решение, используя этот код. Надеюсь, что это будет полезно для всех, кто хочет работать с двумя SIM-телефонами. Это прекрасно работает для меня.

Пожалуйста, добавьте следующие коды в свой класс BroadcastReceiver:

public class IncomingCallInterceptor extends BroadcastReceiver {
@Override
    public void onReceive(Context context, Intent intent) {
    String callingSIM = "";
    Bundle bundle = intent.getExtras();
    callingSIM =String.valueOf(bundle.getInt("simId", -1));
    if(callingSIM == "0"){
        // Incoming call from SIM1
    }
    else if(callingSIM =="1"){
        // Incoming call from SIM2
    }
    }
}
add below codes in your BroadcastReceiver class.

public class IncomingCallInterceptorReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String callingFromSIM = "";
Bundle bundle = intent.getExtras();
callingFromSIM =String.valueOf(bundle.getInt("simId", -1));
if(callingFromSIM == "0"){

    // Incoming call from SIM1 Card

}
else if(callingFromSIM =="1"){

    // Incoming call from SIM2 Card 

}

}

}
Bundle bundle = intent.getExtras();
    String state = bundle.getString(TelephonyManager.EXTRA_STATE);
    if (state != null){
        callFromSecondSimNo = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
    }

Это даст входящий номер, какой бы набор ни был двойной sim или одиночный.