基站定位原理 通过手机号获取基站信息

2024-01-15 09:52:07 数码家电 投稿:一盘搜百科
摘要基站定位原理,通过手机信号获取基站信息,然后调用第三方公开的基站信息查找基站位置,再根据基站具体经纬度数值获取具体位置地址信息 1 基站信息手机号通过TelephonyManager 获

基站定位原理,通过手机信号获取基站信息,然后调用第三方公开的基站信息查找基站位置,再根据基站具体经纬度数值获取具体位置地址信息

 

1 基站信息

手机号通过TelephonyManager 获取lac:mcc:mnc:cell-id(基站信息)的解释:

MCC,Mobile Country Code,移动国家代码(中国的为460);

MNC,Mobile Network Code,移动网络号码(中国移动为0,中国联通为1,中国电信为2);

LAC,Location Area Code,位置区域码;

CID,Cell Identity,基站编号;

BSSS,Base station signal strength,基站信号强度。

具体实现代码如下:

[JAVA]

package com.easipass.test;

import java.util.List;

mport Android.App.Activity;

import android.content.Context;

import android.os.Bundle;

import android.telephony.NeighboringCellInfo;

import android.telephony.TelephonyManager;

import android.telephony.cdma.CdmacellLocation;

import android.telephony.gsm.GsmCellLocation;

import android.util.Log;

import android.view.View;

/**

* 功能描述:通过手机信号获取基站信息

 

* # 通过TelephonyManager 获取lac:mcc:mnc:cell-id

 

* # MCC,Mobile Country Code,移动国家代码(中国的为460);

 

* # MNC,Mobile Network Code,移动网络号码(中国移动为0,中国联通为1,中国电信为2);

 

* # LAC,Location Area Code,位置区域码;

 

* # CID,Cell Identity,基站编号;

 

* # BSSS,Base station signal strength,基站信号强度。

* @author android_ls

*/

public class GSMCellLocationActivity

 

获取基站信息后导入查询软件

 

利用小区号和基站号可以做简单的GSM定位,下面给出一个取得小区号和基站号的方法。

首先依然是打开AT指令端口。

要取得小区号和基站号,需要首先让手机输出这两个号码,方法是利用设置命令”AT+CREG=2”。然后再发送AT+CREG?查询即可取得基站号和ID号。

返回值应该是这样的:

AT+CREG=2;+CREG?

+CREG: 2,n,”ABCD”,”ABCD”

OK

其中第一个“ABCD”是小区号(LAC),第二个“ABCD”是基站号(CI)。

至于运营商,可以用AT+COPS?获取。返回值应该类似这样:

AT+COPS?

+COPS: 0,0,”China Mobile”

OK*460-0-29820-252369797此为基站位置信息

这样,就可以利用取得的基站号和ID号做基站定位了。

 

精度的话还是比较感人的,偏远地区可能会有的误差。想获取全国基站信息表

声明:一盘搜百科所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系 88888@qq.com