Cómo implementar el posicionamiento de mapas electrónicos en java
importar android.telephony.TelephonyManager;
importar android.telephony.gsm; importar android.util.Log;
importar android.telephony.gsm. .
clase pública CellInfoManager {
privado int asu;
privado int oferta;
privado int cid;
isCdma booleano privado;
isGsm booleano privado;
int lac privado;
lat int privado;
oyente final privado PhoneStateListener ;
Int privado lng;
Int privado mcc;
Int privado mnc;
Int privado nid;
privado int sid;
teléfono privado de TelephonyManager;
válido booleano privado;
contexto de contexto privado;
CellInfoManager público (Contexto paramContext) {
this.listener = new CellInfoListener(this);
tel = (TelephonyManager) paramContext.
getSystemService(Context.TELEPHONY_SERVICE);
this.tel.listen(this.listener, PhoneStateListener.LISTEN_CELL_LOCATION | PhoneStateListener.LISTEN_SIGNAL_STRENGTH);
contexto = paramContext; p> p>
}
público estático int dBm(int i) {
int j;
if (i >= 0 &
j = i * 2 + -113;
else
j = 0;
devuelve j;
}
public int asu() {
return this.asu;
}
public int oferta() { p>
if (! this.valid)
actualizar();
devolver this.bid;
}
público JSONObject cdmaInfo() {
if (!put("nid", nid());
jsonObject.put("lat", lat());
jsonObject.put("lng", lng());
} catch (JSONException ex) {
jsonObject = null;
Registro .e ("CellInfoManager", ex.getMessage());
}
Devuelve jsonObject;
}
cellTowers públicas JSONArray () {
JSONArray jsonarray = new JSONArray();
int lat;
int mcc;
int mnc; p>
int aryCell[] = dumpCells();
lat = lac();
mcc = mcc();
mnc = mnc () ;
if (aryCell == null || aryCell.length < 2) {
aryCell = new int[2];
aryCell[0 ] = cid;
aryCell[1] = -60;
}
for (int i = 0; i < aryCell.length; i += 2) {
prueba {
int j2 = dBm(i + 1);
JSONObject jsonobject = new JSONObject();
jsonobject.put (" cell_id", aryCell[i]);
jsonobject.put("location_area_code", lat);
jsonobject.put("mobile_country_code", mcc);
objeto json
.put("mobile_network_code", mnc);
jsonobject.put("signal_rength_code", aryCell[i]);