2016-08-16 332 views
1

我正在开发一款应用程序,我需要知道SIM卡1或SIM卡2上是否有来电。在某些设备中,广播接收器会检测到它,但是这种检测不会在所有设备上发生。如何检测SIM卡1或SIM卡2上的呼叫

如何检测在SIM 1或SIM 2上有来电?

+0

你做了多少?任何进展? –

+1

@MadhukarHebbar是的,接收器我越来越意图,并在这个意图我订阅(0,1)在这个基础知识我检测到来电是SIM 1还是SIM 2,其工作正常运行4.4和LG设备之一但在三星设备它不工作在三星设备我只得到订阅0,只有一个值,如果电话来sim 2或sim 1它只能订阅0 –

回答

1

请尝试此代码。它为我工作希望你帮你这个代码

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 
      } 
    } 
} 
+0

已经尝试过这一点,它适用于一些设备,如摩托罗拉和LG,但在三星和其他设备的情况下失败 –