我有一个双 SIM(插槽 0 和插槽 1)电话。我的服务中有phonestatelistener。只有当 sim slot 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
家庭服务.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>