デュアル SIM (スロット 0 とスロット 1) の電話を持っています。サービスに phonestatelistener があります。このリスナーは、sim スロット 0 の SIM が呼び出しを受信した場合にのみコールバックを受信します。このリスナーは、SIM スロット 1 で SIM にコールが着信したときにコールバックを受け取りません。
SIM を交換し、SIM に関係なく、phonestatelistener が SIM スロット 0 でのみ SIM のコールバックを取得することを確認しました。
私はその問題を理解できませんでした。
何が問題なのか教えてください
Phone model samsung galaxy s duos 2 (GT-S7562) OS jelly bean 4.2.2
Homeservice.java
public class Homeservice extends Service{
TelephonyManager telephonyManager;
PhoneStateListener listener;
@Override
public void onCreate() {
// Get the telephony manager
telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// Create a new PhoneStateListener
listener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
//finish something
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
//do somethings
break;
case TelephonyManager.CALL_STATE_RINGING:
break;
}
}
};
// Register the listener wit the telephony manager
telephonyManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO Auto-generated method stub
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
}
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
}
マニフェスト.xml
<service
android:name="com.kabil.homeservice"
>
</service>