查看基站代碼碼(查詢手機基站代碼)
前沿拓展:
基站定位原理:通過手機信號獲取基站信息,然后調用第三方公開的根據基站信息查找基站的經緯度值,想要具體地址信息的再根據經緯度值獲取具體的地址信息。
一、通過手機信號獲取基站信息
通過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;
import 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 extends Activity {
private static final String TAG = "GSMCellLocationActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 獲取基站信息
findViewById(R.id.button1).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TelephonyManager mTelephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// 返回值MCC + MNC
String operator = mTelephonyManager.getNetworkOperator();
int mcc = Integer.parseInt(operator.substring(0, 3));
int mnc = Integer.parseInt(operator.substring(3));
// 中國移動和中國聯通獲取LAC、CID的方式
GsmCellLocation location = (GsmCellLocation) mTelephonyManager.getCellLocation();
int lac = location.getLac();
int cellId = location.getCid();
Log.i(TAG, " MCC = " + mcc + "\t MNC = " + mnc + "\t LAC = " + lac + "\t CID = " + cellId);
// 中國電信獲取LAC、CID的方式
/*CdmaCellLocation location1 = (CdmaCellLocation) mTelephonyManager.getCellLocation();
lac = location1.getNetworkId();
cellId = location1.getBaseStationId();
cellId /= 16;*/
// 獲取鄰區基站信息
List<NeighboringCellInfo> infos = mTelephonyManager.getNeighboringCellInfo();
StringBuffer sb = new StringBuffer("總數 : " + infos.size() + "\n");
for (NeighboringCellInfo info1 : infos) { // 根據鄰區總數進行循環
sb.append(" LAC : " + info1.getLac()); // 取出當前鄰區的LAC
sb.append(" CID : " + info1.getCid()); // 取出當前鄰區的CID
sb.append(" BSSS : " + (-113 + 2 * info1.getRssi()) + "\n"); // 獲取鄰區基站信號強度
}
Log.i(TAG, " 獲取鄰區基站信息:" + sb.toString());
}
});
}
}
在AndroidManifest.xml添加獲取位置信息的權限:
[html] www.2cto.com
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
點擊“獲取基站信息”的按鈕后,Logcat的日志輸出如下:
1、中國聯通:
2、中國移動:
拓展知識:
- 冰箱維修(如何自行解決常見問題)。04-21
- 新飛不制冷維修(應該如何處理)?11-20
- 1海信42k11p怎么折開(海信42K11P:全方位展示超清畫質)
- 2電視頻道沒了怎么恢復(快速解決方法)
- 3Fardior燃氣灶售后維修電話號碼查詢(Fardior燃氣灶售后維修電話查詢)
- 4艾木歐防盜門沒電打不開怎么辦(艾木歐防盜門沒電無法啟動?解決方法總結)
- 5ENS指紋鎖售后熱線(ENS指紋鎖售后熱線-專業解決您的問題)
- 6打電話顯示關機是什么原因(如何解決手機無法接通問題)。
- 7v500hk1 cs5故障維修(v500hk1 cs5故障維修指南)
- 8創維液晶電視的遙控器怎么調試(創維電視遙控器調試指南)
- 9林內空氣能售后服務官網熱線(林內空氣能售后服務官網熱線)
- 10朝友精工保險柜24小時售后電話(朝友精工保險柜24小時售后電話 - 完善24小時保
-
三菱空調總部熱線電話(三菱空調電路板上顏色是紅色的二極管起什么作用三菱
2024-09-11
-
美的中央空調廠家售后服務官網熱線(壓縮機為什么要抽真空壓縮機為什么要抽
2024-09-11
-
美的中央空調全國服務電話(美的空調開不起來可能的原因及解決方法)。
2024-09-11
-
基伊埃空調廠家售后維修電話(如何獲取基伊埃空調廠家的售后維修服務電話號
2024-09-11
-
廈門英利蒂克Enlitic制冰機維修服務電話(制冰機制冷劑r600a加注)
2024-09-11