Qualcuno sa come recuperare l'elenco di celle su GSM e CDMA su Android.Recupera informazioni sulle celle di celle
mi hanno cercato di utilizzare Google Maps API Sedi: https://developers.google.com/maps/documentation/business/geolocation/
e voglio ottenere cellule torri informazioni con questi campi:
- CellId: identificatore univoco della cella. Su GSM, questo è l'ID della cella (CID); Le reti CDMA utilizzano l'ID della stazione base (BID).
- locationAreaCode: il codice di località (LAC) per le reti GSM; Le reti CDMA utilizzano l'ID di rete (NID).
- mobileCountryCode: Mobile Country Code (MCC) del cellulare.
- mobileNetworkCode: il codice di rete mobile del cellulare. Questa è la MNC per GSM o l'ID di sistema (SID) per CDMA.
- età: il numero di millisecondi poiché questa cella era primaria. Se età è 0, cellId rappresenta una misurazione corrente.
- signalStrength: intensità del segnale radio misurata in dBm.
- timingAdvance: il valore di anticipo della temporizzazione.
Questo codice non particolarmente ottenere cellule torrette informazioni.
TelephonyManager tel = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// Type of the network
int phoneTypeInt = tel.getPhoneType();
String phoneType = null;
phoneType = phoneTypeInt == TelephonyManager.PHONE_TYPE_GSM ? "gsm" : phoneType;
phoneType = phoneTypeInt == TelephonyManager.PHONE_TYPE_CDMA ? "cdma" : phoneType;
try {
if (phoneType != null) {
params.put("radioType", phoneType);
}
} catch (Exception e) {}
/*
* The below code doesn't work I think.
*/
JSONArray cellList = new JSONArray();
List<NeighboringCellInfo> neighCells = tel.getNeighboringCellInfo();
for (int i = 0; i < neighCells.size(); i++) {
try {
JSONObject cellObj = new JSONObject();
NeighboringCellInfo thisCell = neighCells.get(i);
cellObj.put("cellId", thisCell.getCid());
cellList.put(cellObj);
} catch (Exception e) {}
}
if (cellList.length() > 0) {
try {
params.put("cellTowers", cellList);
} catch (JSONException e) {}
}
E io impostare le autorizzazioni in questo modo:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_UPDATES"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
Please help me, grazie.
"Il mio codice funziona tranne ottenere cellule torri informazioni" è una descrizione dei sintomi inutile. Per favore prenditi il tempo di spiegare, in dettaglio, cosa è e cosa non funziona. – CommonsWare
Mi dispiace, l'inglese non è la mia lingua principale. Quando eseguo il codice sul mio Android (l'operatore è sprint), "tel.getNeighboringCellInfo();" ritorna sempre nullo. – wf9a5m75
E anche se provo il codice su altri androide delle reti GSM, ho ottenuto lo stesso risultato. Quindi la mia domanda è come ottenere informazioni sulle torri cellulari. – wf9a5m75