Как получить параметры качества сигнала GSM на Android? - PullRequest
2 голосов
/ 13 ноября 2010

Я пытаюсь найти какие-либо методы для получения качественных параметров, таких как BER и CIR.Единственной вещью, которую я смог найти в Google и на веб-сайте Android Developer, была getGsmBitErrorRate (), но, похоже, он постоянно показывает -1.Так есть ли способ получить качественные параметры другим способом?Или я просто что-то не так делаю?

1 Ответ

1 голос
/ 13 ноября 2010

Это работает для вас?

    TelephonyManager SignalManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

    PhoneStateListener signalListener = new PhoneStateListener() {

        public void onCallForwardingIndicatorChanged(boolean cfi) {
        }

        public void onCallStateChanged(int state, String incomingNumber) {
        }

        public void onCellLocationChanged(CellLocation location) {
        }

        public void onDataActivity(int direction) {
        }

        public void onDataConnectionStateChanged(int state) {
        }

        public void onDataConnectionStateChanged(int state, int networkType) {
        }

        public void onMessageWaitingIndicatorChanged(boolean mwi) {
        }

        public void onServiceStateChanged(ServiceState serviceState) {
        }

        public void onSignalStrengthsChanged(SignalStrength signalStrength) {
            super.onSignalStrengthsChanged(signalStrength);

            Log.e("onSignalStrengthsChanged: ", "GSM Cinr = "
                    + signalStrength.getGsmSignalStrength()); 
        }

    }; 

    SignalManager.listen(signalListener,
            PhoneStateListener.LISTEN_SIGNAL_STRENGTH); 
...