android运营商相关信息获取代码收集

2024-04-23 00:48

本文主要是介绍android运营商相关信息获取代码收集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1,手机卡运营商获取:

private  String getSimOperator(Context context) {String opeName = "";TelephonyManager teleManager= (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);String opeNum = teleManager.getSimOperator();if ("46001".equals(opeNum ) || "46006".equals(opeNum ) || "46009".equals(opeNum )) {opeType = "中国联通";} else if ("46000".equals(opeNum ) || "46002".equals(opeNum ) || "46004".equals(opeNum ) || "46007".equals(operator)) {opeType = "中国移动";} else if ("46003".equals(opeNum ) || "46005".equals(opeNum ) || "46011".equals(opeNum )){opeType = "中国电信";}return opeType;}

2,获取移动网络类型

private int getNetType() {
TelephonyManager  manager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);switch (manager.getNetworkType()) {case TelephonyManager.NETWORK_TYPE_GPRS:case TelephonyManager.NETWORK_TYPE_CDMA:case TelephonyManager.NETWORK_TYPE_GSM:case TelephonyManager.NETWORK_TYPE_EDGE:case TelephonyManager.NETWORK_TYPE_1xRTT:case TelephonyManager.NETWORK_TYPE_IDEN:return 2;  // 2G网络case TelephonyManager.NETWORK_TYPE_EVDO_A:case TelephonyManager.NETWORK_TYPE_UMTS:case TelephonyManager.NETWORK_TYPE_EVDO_0:case TelephonyManager.NETWORK_TYPE_HSDPA:case TelephonyManager.NETWORK_TYPE_HSUPA:case TelephonyManager.NETWORK_TYPE_HSPA:case TelephonyManager.NETWORK_TYPE_EVDO_B:case TelephonyManager.NETWORK_TYPE_EHRPD:case TelephonyManager.NETWORK_TYPE_HSPAP:case TelephonyManager.NETWORK_TYPE_TD_SCDMA:return 3; // 3G网络case TelephonyManager.NETWORK_TYPE_LTE:case TelephonyManager.NETWORK_TYPE_IWLAN:return 4;   // 4G网络case TelephonyManager.NETWORK_TYPE_NR:return 5;//5G网络default:return 0;}}

3,双卡网络判断及处理
https://www.jianshu.com/p/fbaf08eb59d7
4,信号参数获取

private class SimListener extends PhoneStateListener {@Overridepublic void onDataConnectionStateChanged(int state) {super.onDataConnectionStateChanged(state);}@Overridepublic void onSignalStrengthsChanged(SignalStrength signalStrength) {super.onSignalStrengthsChanged(signalStrength);if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {List<CellSignalStrength> strengths = signalStrength.getCellSignalStrengths();if (null != strengths && strengths.size() > 0) {CellSignalStrength strength = strengths.get(0);if (strength instanceof CellSignalStrengthLte) {CellSignalStrengthLte lte = (CellSignalStrengthLte) strength;int  rsrp = lte.getRsrp();int   rsrq = lte.getRsrq();int  sinr = lte.getRssnr();} else if (strength instanceof CellSignalStrengthCdma) {CellSignalStrengthCdma wcdma = (CellSignalStrengthCdma) strength;int rscp = wcdma.getDbm();int ecio =wcdma.getCdmaEcio();}}} else {try {Integer rsrp = (Integer) signalStrength.getClass().getMethod("getLteRsrp").invoke(signalStrength);Integer rsrq = (Integer) signalStrength.getClass().getMethod("getLteRsrq").invoke(signalStrength);Integer sinr = (Integer) signalStrength.getClass().getMethod("getLteRssnr").invoke(signalStrength);Integer ecio = (Integer) signalStrength.getClass().getMethod("getCdmaEcio").invoke(signalStrength) / 10;Integer rscp =signalStrength.getClass().getMethod("getWcdmaRscp").invoke(signalStrength);} catch (Exception e) {}}@Overridepublic void onCellInfoChanged(List<CellInfo> cellInfo) {super.onCellInfoChanged(cellInfo);}}

这篇关于android运营商相关信息获取代码收集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/927337

相关文章

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

【北交大信息所AI-Max2】使用方法

BJTU信息所集群AI_MAX2使用方法 使用的前提是预约到相应的算力卡,拥有登录权限的账号密码,一般为导师组共用一个。 有浏览器、ssh工具就可以。 1.新建集群Terminal 浏览器登陆10.126.62.75 (如果是1集群把75改成66) 交互式开发 执行器选Terminal 密码随便设一个(需记住) 工作空间:私有数据、全部文件 加速器选GeForce_RTX_2080_Ti

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d