2

我正在尝试找出任何方法来检索 BER 和 CIR 等质量参数。我在 Google 和 Android 开发者网站上唯一能找到的是 getGsmBitErrorRate(),但它似乎一直显示为 -1。那么有没有办法以其他方式获取质量参数?或者我可能只是做错了什么?

4

1 回答 1

1

这对你有用吗?

    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); 
于 2010-11-13T15:44:19.527 回答