Android SignalStrength.isGsm

147 views Asked by At

On my Android app, I have a phone state listener that is checking for gsm:

m_phoneStateListener = new PhoneStateListener() {
    public void onSignalStrengthsChanged(SignalStrength signalStrength) {
        // check if it's GSM
        if(signalStrength.isGsm()) {
            m_cellularSignalStrength = signalStrength.getGsmSignalStrength();
        } else {
            m_cellularSignalStrength = signalStrength.getCdmaDbm();
            m_cellularEVDOSignalStrength = signalStrength.getEvdoDbm();
        }
    }
};

I think this is returning back a false positive. The call to signalStrength.isGsm() is returning true, but the getGsmSignalStrength() call is returning back 99, or GSM_NO_NETWORK. Any idea of why isGsm() is returning true? Does it return true just because it's capable, or for another reason?

I'm using a Sprint sim card with a Samsung Galaxy Tab S 10.5.

Also should be noted, I'm using this to try to do an HTTPS request. Even though this portion is not acting as I expect, when I ignore the GSM_NO_NETWORK response, the request passes through successfully, so I obviously have some sort of network connected...

0

There are 0 answers