Búsqueda de ubicación mediante MCC, MNC, LAC y ID de celda

Sé cuáles son los valores para MCC, MNC, LAC y ID de celda. Quiero en C escribir un programa para calcular la posición en forma de valores de latitud y longitud en Linux.

FYI:

  • MCC – Código de País Móvil
  • MNC – Código de red móvil
  • LAC – Código de área de la ubicación; Un número de 16 bits lo que permite 65536 áreas de ubicación dentro de un GSM PLMN
  • Más información está disponible aquí en Wikipedia, Área de ubicación Identidad

Pregunta:

  1. ¿Cómo puedo convertir MCC, MNC, LAC, Cell ID en valores de latitud y longitud en linux?
  2. ¿Por qué la identificación de la célula varía cada vez, al intentar leer?

Para responder a sus preguntas:

  1. Puede acceder a bases de datos públicas desde el terminal o un navegador para convertir la ID de la celda en lat / lon. Las bases de datos incluyen:

    • API de Unwired Labs
    • OpenCellID
  2. ID de celda es el ID de la torre del teléfono celular a la que está conectado su teléfono / dispositivo. En el momento en que se mueva un poco, o la señal de otra torre cercana es mejor que la actual, su teléfono cambiará a esa torre, y su ID de celda refleja ahora el ID de esa torre.

Usted necesita una base de datos OpenCellID (proporcionan APIs para la nueva medición de células, obtener la posición de una celda específica, etc)

o

Utilice la API "secreta": " http://www.google.com/glm/mmap " es una API no pública para convertir cellLocation en latitud y longitud.

Muchas maneras de hacer eso se dan en los ansilers para esta pregunta de SO.

Puede utilizar este sencillo pero eficiente sitio web que no necesita ningún registro:

http://www.cell2gps.com/

Mientras que puede acceder a la información del operador como MCC y MNC a la página wiki:

http://en.wikipedia.org/wiki/Mobile_country_code#I

El resultado es la ubicación GPS a través de Google Maps,

Escribí una secuencia de comandos python que puede hacer esto por ti. Puede obtener un binario del archivo pyc.

#!/bin/python """ Written by Atissonoun - Credits to MFC & HAC ***You need to initialize the script in order to fix the import and the dependency. This is only a Beta version of the project*** This python file works as the engine for the project. imports, coordinates, run...... """ #Importing modules import requests #defining a Api_Keys Google_API_KEY="Your google API Key goes here" OpenCell_Api_Key ="Your OpenCellID API Key goes here" def Google(MMC,MNC,LAC,ID,API_KEY=Google_API_KEY): url = "https://www.googleapis.com/geolocation/v1/geolocate?key={}".format(API_KEY) data={ "radioType": "gsm", "cellTowers":[ { "cellId": ID, "locationAreaCode": LAC, "mobileCountryCode": MMC, "mobileNetworkCode": MNC } ] } response = requests.post(url, json=data) if response.status_code == 200 : lat=response.json()[u'location'][u'lat'] long = response.json()[u'location'][u'lng'] d={'LAT':lat,'LONG':long} print('Located Cell: {}'.format(ID)) return d else: print('Error: {}'.format(response.status_code)) return None def Opencell(MMC,MNC,LAC,ID,API_KEY=OpenCell_Api_Key): url = "https://us1.unwiredlabs.com/v2/process.php" data = { "token": API_KEY, "radio": "gsm", "mcc": MMC, "mnc": MNC, "cells": [{ "lac": LAC, "cid": ID }] } response = requests.post(url, json=data) if response.status_code == 200: if response.json()[u'status']== 'error': print('Error: {}'.format(response.json()[u'message'])) return None else: lat = response.json()[u'lat'] long = response.json()[u'lon'] d = {'LAT': lat, 'LONG': long} print('Located Cell: {}'.format(ID)) return d else: print('Error: {}'.format(response.status_code)) return None 
  • No se encontró el anuncio de Android
  • Error al cargar CharSequence en Scala 2.11.4 y sbt 0.12.4
  • La pila TCP XBox 360 no responde a sondas TCP Zero Window con una carga útil de 0 bytes
  • Mensajes androide logcat invisibles en eclipse
  • Fclose funciona de forma diferente en android y linux
  • Iniciar manualmente la conexión 3G en Android y mantenerla activada
  • ¿Cómo se puede activar la depuración de USB para Kindle Fire en Linux (Ubuntu)?
  • ¿Cuáles son las funciones POSIX más importantes que no están disponibles en Android?
  • Eclipse y Android: no se puede depurar en Samsung Galaxy S2 porque no se ha detectado
  • tools / android devuelto no puede encontrar sdkmanager.jar
  • Compilar y construir "iw" para Android 4.1 dispositivo?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.