Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to get a list of available gsm networks?

i'm currently writing on some piece of code in android 2.1 that is supposed to measure the signal strength of the gsm signals. what i need is some kind of list with some kind of network IDs matching the corresponding signal strengthes... i got this far:

public class main extends Activity {
    TelephonyManager telManager;
    GSMListener gsmListener;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        gsmListener = new GSMListener();

        telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        telManager.listen(gsmListener ,PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);

    }

    private class GSMListener extends PhoneStateListener {
        /* Get the Signal strength from the provider, each time there is an update */
        @Override
        public void onSignalStrengthsChanged(SignalStrength signalStrength) {
            super.onSignalStrengthsChanged(signalStrength);

            Toast.makeText(main.this, "GSM Cinr: " + signalStrength.getGsmSignalStrength(), Toast.LENGTH_SHORT).show();
        }
    };
}

but at this point, i wonder if there's network-id like the bssid for wifi networks? how is this handled with gsm? i need to identify the gsm network i'm getting the signal strength of.

EDIT:

by "network-id", meant "cell-id". what i need is a list of *all available* gsm networks in range and their reception quality. the operator-id is not of much interest to me, as i need to identify cell AND network, i'm getting the signal strength from.

like image 897
xenonite Avatar asked Jul 02 '10 22:07

xenonite


People also ask

What phone networks are GSM?

Which Carriers Are CDMA? Which Are GSM? In the US, Verizon, US Cellular, and the old Sprint network (now owned by T-Mobile) used CDMA. AT&T and T-Mobile used GSM.

How do I check signal strength of all available network operators?

For AndroidGo to the Settings app > About phone > Status > SIM status > Signal Strength. You will see numbers expressed in dBm (decibel milliwatts).

What does GSM only mean?

GSM means Global System for Mobile communications, which is a network that supports both cellular and data. The same goes for CDMA, which means Code Division Multiple Access. US Mobile currently only operates as a GSM network.


1 Answers

Every operator has a unique ID, a 5 digit number called PLMN (Public land mobile network).

That number consists of a 3-digit MCC (Mobile Country Code) followed by a 2-digit MNC (Mobile Network Code).

The wikipedia list is a relatively complete list.

like image 116
lornova Avatar answered Sep 22 '22 18:09

lornova