Я занимаюсь разработкой приложения для запуска Android и хочу, чтобы в моем приложении поддерживались двойные уровни сигнала сима.
package com.example.sms;
import android.content.Context;
import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.SignalStrength;
import android.telephony.TelephonyManager;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private TextView tvSim1SignalLevel, tvSim2SignalLevel;
private TelephonyManager telephonyManager;
private SignalLevelListener signalLevelListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvSim1SignalLevel = findViewById(R.id.tvSim1SignalLevel);
tvSim2SignalLevel = findViewById(R.id.tvSim2SignalLevel);
signalLevelListener = new SignalLevelListener();
telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.listen(signalLevelListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
}
public class SignalLevelListener extends PhoneStateListener {
@Override
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
super.onSignalStrengthsChanged(signalStrength);
tvSim1SignalLevel.setText(String.valueOf(signalStrength.getLevel()));
}
}
@Override
protected void onDestroy() {
super.onDestroy();
telephonyManager.listen(signalLevelListener, PhoneStateListener.LISTEN_NONE);
}
}
Я получаю только уровень сигнала SIM-карты по умолчанию. Как получить вторую SIM-карту?уровень сигнала как в строке состояния иконки уровня сигнала симов?