1.概述
本文主要介绍android基站定位的基本思路,介绍了一些TelephonyManager中用到方法。最后简单说明google定位服务与android提供参数之间的联系。
2. 基站定位原理:
我们可以通过手机信号获取基站信息,然后调用第三方服务,再根据基站信息查找基站的经度纬度值。 尽管基站网络制式不同(cdma或gsm)所获取的基站信息也不一样,但用谷歌等一般这样的第三方定位服务都需要获得以下这些基站信息:
MCC,Mobile Country Code,移动国家代码(中国的为460)。
MNC,Mobile Network Code,移动网络号码(中国移动为0,中国联通为1,中国电信为2)。
LAC,Location Area Code,位置区域码。
CID,Cell Identity,基站编号。
BSSS,Base station signal strength,基站信号强度。
3. Android基站信息api
获取网络服务商信息MNC&MCC
从系统服务中获取TelephonyManager:
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
TelephonyManager#getNetworkOperator方法获取目前注册网络MCC+MNC信息,一般是5-6位的字符串,前3位为MCC