デュアルSIM電話で着信コールのターゲットSIMを検出する必要があるAndroidアプリケーションを作成しています。Android API は、1 つの SIM のみのアクセスを提供します。これについてグーグルで調べましたが、解決策が見つかりませんでした。デバイスの製造元に依存しているため、ターゲットの SIM を検出できないことがわかりました。
ターゲット SIM を検出するために使用できる API はありますか?
デュアルSIM電話で着信コールのターゲットSIMを検出する必要があるAndroidアプリケーションを作成しています。Android API は、1 つの SIM のみのアクセスを提供します。これについてグーグルで調べましたが、解決策が見つかりませんでした。デバイスの製造元に依存しているため、ターゲットの SIM を検出できないことがわかりました。
ターゲット SIM を検出するために使用できる API はありますか?
ロリポップで 22+
public class MessageReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int slot = Integer.parseInt((String) intent.getExtras().get("slot"));
if(slot == 0){
// sim1
}
if(slot == 1){
// sim2
}
}
}
Lenovo K3 noteでテスト済み
これを試して...
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
}
}
}