Android 获取CellId以及IMEI 获取基站id


private void setCellIdentity() {
        if (isMobileConnected(this)) {
            System.out.println("基站已连接");
            int cellid=0;
            TelephonyManager tel = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
            CellLocation cel = tel.getCellLocation();
            //移动联通 GsmCellLocation
            if (cel instanceof GsmCellLocation) {
                GsmCellLocation gsmCellLocation = (GsmCellLocation) cel;
                cellid = gsmCellLocation.getCid();
            }else if(cel instanceof CdmaCellLocation){
                //电信   CdmaCellLocation
                CdmaCellLocation cdmaCellLocation = (CdmaCellLocation) cel;
                cellid = cdmaCellLocation.getBaseStationId();
            }

            tv_cid.setText("cell identity:" + cellid);
            //String imei = tm.getDeviceId();
        } else {
            tv_cid.setText("cell identity:基站未连接");
        }
    }




权限

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
< uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>

Android获取大致定位可以使用网络定位或基站定位。 网络定位是通过手机连接的Wi-Fi网络或移动数据网络来确定手机的位置。Android系统提供了一个名为LocationManager的类,可以通过它来获取网络定位信息基站定位是通过手机连接的基站信号来确定手机的位置,这种定位方式比较粗略,但是耗电少。Android系统也提供了获取基站定位信息的API。 以下是获取网络定位的示例代码: ``` LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.ACCURACY_COARSE); // 设置精度要求为粗略 String provider = locationManager.getBestProvider(criteria, true); // 获取最佳的位置提供器 Location location = locationManager.getLastKnownLocation(provider); // 获取最后一次定位信息 ``` 获取基站定位的示例代码: ``` TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); GsmCellLocation cellLocation = (GsmCellLocation) telephonyManager.getCellLocation(); int cellId = cellLocation.getCid(); // 获取基站ID int lac = cellLocation.getLac(); // 获取位置区域码 ``` 需要注意的是,获取位置信息需要在AndroidManifest.xml文件添加相应的权限声明。例如,获取网络位置信息需要添加以下权限声明: ``` <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

松门一枝花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值