移动4g手机用不了移动3g,移动4g卡只能用2g网络和4G

中国移动4G资费上网流量套餐怎么收费? 移动2G/3G流量
&&&来源:& &
简述:  中国移动4G资费上网流量套餐怎么收费? 移动2G/3G流量包可以和4G同时使用吗
  近日,中国移动4G专区悄然上线,其中拥有4G合约机、4G号码、4G资费、4G手机、4G上网卡
  中国移动4G资费上网流量套餐怎么收费? 移动2G/3G流量包可以和4G同时使用吗
  近日,中国移动4G专区悄然上线,其中拥有4G合约机、4G号码、4G资费、4G手机、4G上网卡五个选项。其中用户最关心的4G资费已经曝光,但目前为止还不能在网上办理,处于敬请期待中。笔者看到4G号码中并未出现4G特殊号段,也没有相关特殊的优惠措施,反而在4G套餐和4G手机中给用户带来了不少的惊喜。
  从已经透露的资费我们可以看到,4G上网流量套餐最低为每月50元600MB流量,其次是70元1GB流量,最高一档为180元5GB流量,相比之前的资费变化不大。此外,超出部分为0.29元/MB,并且提供10元100MB的加油包选择。值得一提的是,此次中国移动明确提出允许增加不超过4个共享终端,每超出一个,将会增收10元功能费。备注中我们还看到中国移动4G流量包不能与2G/3G流量包同时使用,若原来已经订购2G/3G流量包,在订购4G流量包后需退订2G/3G流量包,变更次月生效,若之前每没有订购则立即生效。
  此次,中国移动4G专区的正式建立,也是移动4G正式商业化的第一步,相比之前的仅从宣传页或客服了解相关资费情况要方便很多。对于4G手机以及4G上网流量套餐资费也有了明确的官方声明,虽然在官网上并不能办理相关套餐,但是也给了预备换成4G的用户一个相对明确的介绍,让用户可以从官方得知实际的资费情况。以笔者以往办理套餐资费经验来看,各地区营业厅还会在此数据套餐的基础上有着不同程度的优惠,有想办理4G套餐的朋友不妨到营业厅中咨询是否有优惠活动再进行办理。
责任编辑:缤纷为什么我的移动4G卡放在3G手机上只能用2G网?_百度知道
为什么我的移动4G卡放在3G手机上只能用2G网?
可能你的手机不支持移动的3G,或者你当地没有移动3G网络,你看下手机都支持哪些制式
其他类似问题
为您推荐:
3g手机的相关知识
其他5条回答
你的所在地3g信号不好就会跳到2g
你的手机是移动3G还是联通的
你的手机是3G的,当然只能支持2/3G网络喽
那一定是你的手机是定制机
卡跟手机不匹配。。。
没到4G覆盖范围
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁手机签到经验翻倍!快来扫一扫!
4G手机3G卡,3G手机4G卡到底什么区别
23563浏览 / 36回复
&日常经常有人会遇到这样的问题:新买的4G能用原来的3G卡吗?老的3G手机能用新办的4G卡吗?答案是肯定的:4G手机能用3G卡,3G手机不能用4G卡。于是,又有人问了:那3G手机和4G手机有什么不同?&看看以下三个方面的区别1、网络技术的区别:&2、网络制式的区别:&3、网络传输速度的区别:&&此外,中国电信获取国际上广泛采用的FDD-LTE标准的4G牌照。也就是说,电信版的手机是TD-LTE和FDD-LTE混合组网模式的4G手机。附:速率对比:技术对比:FDD-LTE是全球两大4G制式之一,比TD-LTE研发更早,技术更成熟,终端更丰富,与TD-LTE对比,TD-LTE省资源,FDD-LTE速度快;TD-LTE适合热点区域覆盖,FDD-LTE适合广域覆盖。而从技术上讲,两大4G标准则各有千秋。虽然从运营商的频谱资源利用角度, TD-LTE更节省资源,但在用户感知层面,FDD-LTE速度却是飞一般、非一般。其次, FDD-LTE更适合广域覆盖,而TD-LTE更适合局域覆盖。 FDD-LTE的工作模式采用的是连续控制,适用于国家和国际间覆盖漫游。而TD-LTE采用的工作模式是时间分割控制,适用于城市间高密度地区的局部覆盖。当处于高度密集的热点区域, TD-LTE优势就会体现出来。业内人士指出,在用户层面,热点地区的局域覆盖还有WiFi这样又省钱速度又快的做“备胎”,因此更适合广域覆盖的 FDD-LTE的优势可见一斑。TD-LTE与FDD-LTE本质上共用一套标准基础,在业务实现的技术上有着一定差别。TD-LTE节省频道资源,适合热点集中区域覆盖;FDD-LTE的理论最高速度更快,基站覆盖更广,适合郊区、公路铁路等广域覆盖。 两者混合组网,是更好的选择。
3G手机也能 用4G卡,只是不能用4G那一部分,因4G卡是向下兼容的。
真相令人期待
sb,用都没用过就瞎bb
谢谢分享吧
对楼主说:
小便,你回头找你老师好好教你吧!3G手机不能用4G卡是你自己说的吧?你幼儿园大班毕业的对不?
3G手机能用4G卡吧,只是用不了4G的网速嘛。我2G的手机还装着4G卡呢。
联通貌似也是FDD的
3G手机只是用不了4G,怎么不能用4G卡
怎么什么人都能当小编了?对于移动和联通,3G手机可以插3G卡、4G卡,4G手机也可以插3G卡,4G卡。对于电信,3G手机只能插3G卡,4G手机只能插4G卡。
联通用户表示2G、3G、4G全都用的一张卡
金属513 发表于
怎么什么人都能当小编了?对于移动和联通,3G手机可以插3G卡、4G卡,4G手机也可以插3G卡,4G卡。对于电信,...
联通从来就没有区分过3G卡和4G卡,只要手机支持就可以用4G网
联通貌似也是FDD的
联通90%的基站都是FDD,我的手机完全不支持TDD,照样很多地方可以用到4G,只是信号强度比3G弱
谁说3G手机不能用4G卡的?我用的荣耀3X PRO,双3G,移动联通两个号都是4G的,套餐也是4G的(移动为保号,没流量),用的很好
watt008 发表于
3G手机也能 用4G卡,只是不能用4G那一部分,因4G卡是向下兼容的。
看来你不是电信用户,真是谁用谁知道,之前我去电信换4g卡被告知如果是3G手机会经常没信号,网上查询说是鉴权方式变化造成。现在用华为4G手机经常从4g降低成2G永不回来,需要手动开关机或手动4g开关才能再次找到4g,如果只选择2g/3G就一切正常。
移动3G手机 用的4G卡 免费换的
hdyl 发表于
看来你不是电信用户,真是谁用谁知道,之前我去电信换4g卡被告知如果是3G手机会经常没信号,网上查询说是鉴...
移动用户,3G手机,用4G卡
watt008 发表于
3G手机也能 用4G卡,只是不能用4G那一部分,因4G卡是向下兼容的。
我不知道电信用户是不是这样...反正移动绝对可以用的
想念式、、随心 发表于
我不知道电信用户是不是这样...反正移动绝对可以用的
我是移动3G手机,用4G卡
支持键盘翻页 ( 左右 )&
您需要登录后才可以回帖&&&|&&&&&
可能感兴趣的板块:
用户名/注册邮箱/注册手机号
其他第三方号登录13843人阅读
android(140)
Android 判断用户2G/3G/4G移动数据网络
在做 Android App 的时候,为了给用户省流量,为了不激起用户的愤怒,为了更好的用户体验,是需要根据用户当前网络情况来做一些调整的,也可以在 App 的设置模块里,让用户自己选择,在 2G / 3G / 4G 网络条件下,是否允许请求一些流量比较大的数据。
通过 Android 提供的 TelephonyManager 和 ConnectivityManager 都可以获取到 NetworksInfo 对象,可以通过 getType() 获取类型,判断是 wifi 还是 mobile ,如果是 mobile ,可以通过 NetworksInfo 对象的 getSubType() 和 getSubTypeName() 可以获取到对于的网络类型和名字。
网络类型和名字定义在 TelephonyManager 类里。
/** Network type is unknown */
public static final int NETWORK_TYPE_UNKNOWN = 0;
/** Current network is GPRS */
public static final int NETWORK_TYPE_GPRS = 1;
/** Current network is EDGE */
public static final int NETWORK_TYPE_EDGE = 2;
/** Current network is UMTS */
public static final int NETWORK_TYPE_UMTS = 3;
/** Current network is CDMA: Either IS95A or IS95B*/
public static final int NETWORK_TYPE_CDMA = 4;
/** Current network is EVDO revision 0*/
public static final int NETWORK_TYPE_EVDO_0 = 5;
/** Current network is EVDO revision A*/
public static final int NETWORK_TYPE_EVDO_A = 6;
/** Current network is 1xRTT*/
public static final int NETWORK_TYPE_1xRTT = 7;
/** Current network is HSDPA */
public static final int NETWORK_TYPE_HSDPA = 8;
/** Current network is HSUPA */
public static final int NETWORK_TYPE_HSUPA = 9;
/** Current network is HSPA */
public static final int NETWORK_TYPE_HSPA = 10;
/** Current network is iDen */
public static final int NETWORK_TYPE_IDEN = 11;
/** Current network is EVDO revision B*/
public static final int NETWORK_TYPE_EVDO_B = 12;
/** Current network is LTE */
public static final int NETWORK_TYPE_LTE = 13;
/** Current network is eHRPD */
public static final int NETWORK_TYPE_EHRPD = 14;
/** Current network is HSPA+ */
public static final int NETWORK_TYPE_HSPAP = 15;
看到这个代码和注释,相信没有这方面知识的人很难看懂,都啥玩意?这注释跟没注释有啥区别?!就是让人看着更加闹心而已。所以说,注释对阅读代码的人很重要。当然这些东西可能太专业了,写这些代码的人估计是想写也不知道该怎么了,得写多大一坨啊?!我在最后会贴上一些我整理的资料,可以供大家参考一下,不是很详细,也不专业,就是大概有个印象。
TelephonyManager 还提供了 getNetworkTypeName(int type) 的方法,这个方法可以返回一个字符串,但是信息量不大。
那怎么判断是 2G , 3G 还是 4G 网络呢?TelephonyManager 还提供了另外一个方法,getNetworkClass(int networkType) ,但这个方法被隐藏掉了,我把代码贴一下。
public static int getNetworkClass(int networkType) {
switch (networkType) {
case NETWORK_TYPE_GPRS:
case NETWORK_TYPE_EDGE:
case NETWORK_TYPE_CDMA:
case NETWORK_TYPE_1xRTT:
case NETWORK_TYPE_IDEN:
return NETWORK_CLASS_2_G;
case NETWORK_TYPE_UMTS:
case NETWORK_TYPE_EVDO_0:
case NETWORK_TYPE_EVDO_A:
case NETWORK_TYPE_HSDPA:
case NETWORK_TYPE_HSUPA:
case NETWORK_TYPE_HSPA:
case NETWORK_TYPE_EVDO_B:
case NETWORK_TYPE_EHRPD:
case NETWORK_TYPE_HSPAP:
return NETWORK_CLASS_3_G;
case NETWORK_TYPE_LTE:
return NETWORK_CLASS_4_G;
return NETWORK_CLASS_UNKNOWN;
然后下面是这几个常量的值。
/** Unknown network class. {@hide} */
public static final int NETWORK_CLASS_UNKNOWN = 0;
/** Class of broadly defined &2G& networks. {@hide} */
public static final int NETWORK_CLASS_2_G = 1;
/** Class of broadly defined &3G& networks. {@hide} */
public static final int NETWORK_CLASS_3_G = 2;
/** Class of broadly defined &4G& networks. {@hide} */
public static final int NETWORK_CLASS_4_G = 3;
不知道为啥要把这些东西给隐藏起来,然道是不靠谱?!还是其他的更好的方式?!不知道,先这样吧,现在通过上面的手段,是可以知道用户用的是什么网络,当然也可以区分出来用户使用的是 2G , 3G 还是 4G 了。当然,你获取到这些数据后,你也可以推算出用户用的是哪家公司的网络,移动的,联通的,还是电信的,当然,只在中国。而且虚拟运营商开始真正上市后,这个就区分不出来是京东的,还是国美,苏宁的了,但是你可以知道你的手机号用的是联通的网还是移动的网。
最后贴上我收集整理的一些资料,可以参考一下。
GPRS & & & 2G(2.5) General Packet Radia Service 114kbps
EDGE & & & 2G(2.75G) Enhanced Data Rate for GSM Evolution 384kbps
UMTS & & &3G WCDMA 联通3G Universal Mobile Telecommunication System 完整的3G移动通信技术标准
CDMA & & 2G 电信 Code Division Multiple Access 码分多址
EVDO_0 & 3G (EVDO 全程 CDMA2000 1xEV-DO) Evolution - Data Only (Data Optimized) 153.6kps - 2.4mbps 属于3G
EVDO_A &3G 1.8mbps - 3.1mbps 属于3G过渡,3.5G
1xRTT & & &2G CDMA2000 1xRTT (RTT - 无线电传输技术) 144kbps 2G的过渡,
HSDPA & &3.5G 高速下行分组接入 3.5G WCDMA High Speed Downlink Packet Access 14.4mbps&
HSUPA & &3.5G High Speed Uplink Packet Access 高速上行链路分组接入 1.4 - 5.8 mbps
HSPA & & &3G (分HSDPA,HSUPA) High Speed Packet Access&
IDEN & & &2G Integrated Dispatch Enhanced Networks 集成数字增强型网络 (属于2G,来自维基百科)
EVDO_B 3G EV-DO Rev.B 14.7Mbps 下行 3.5G
LTE & & & &4G Long Term Evolution FDD-LTE 和 TDD-LTE , 3G过渡,升级版 LTE Advanced 才是4G&
EHRPD &3G CDMA2000向LTE 4G的中间产物 Evolved High Rate Packet Data HRPD的升级
HSPAP &3G HSPAP 比 HSDPA 快些
import java.io.BufferedR
import java.io.InputStreamR
import java.text.DecimalF
import java.util.L
import android.content.C
import android.net.ConnectivityM
import android.net.NetworkI
import android.net.wifi.WifiI
import android.net.wifi.WifiM
import android.telephony.NeighboringCellI
import android.telephony.TelephonyM
import android.telephony.cdma.CdmaCellL
import android.telephony.gsm.GsmCellL
import android.util.L
public class NetWorkUtil {
public static boolean isWifiAvailable() {
ConnectivityManager connectivityManager = (ConnectivityManager) ConfigManager
.getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
return (networkInfo != null && networkInfo.isConnected() && networkInfo
.getType() == ConnectivityManager.TYPE_WIFI);
* 获取MAC地址
* @param context
public static String getMacAddress(Context context) {
if (context == null) {
return &&;
String localMac =
if (isWifiAvailable()) {
localMac = getWifiMacAddress(context);
if (localMac != null && localMac.length() & 0) {
localMac = localMac.replace(&:&, &-&).toLowerCase();
return localM
localMac = getMacFromCallCmd();
if (localMac != null) {
localMac = localMac.replace(&:&, &-&).toLowerCase();
return localM
private static String getWifiMacAddress(Context context) {
String localMac =
WifiManager wifi = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
if (wifi.isWifiEnabled()) {
localMac = info.getMacAddress();
if (localMac != null) {
localMac = localMac.replace(&:&, &-&).toLowerCase();
return localM
} catch (Exception e) {
e.printStackTrace();
* 通过callCmd(&busybox ifconfig&,&HWaddr&)获取mac地址
* @attention 需要设备装有busybox工具
* @return Mac Address
private static String getMacFromCallCmd() {
String result = &&;
result = callCmd(&busybox ifconfig&, &HWaddr&);
if (result == null || result.length() &= 0) {
DebugLog.v(&tag&, &cmd result : & + result);
// 对该行数据进行解析
// 例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
if (result.length() & 0 && result.contains(&HWaddr&) == true) {
String Mac = result.substring(result.indexOf(&HWaddr&) + 6,
result.length() - 1);
if (Mac.length() & 1) {
result = Mac.replaceAll(& &, &&);
public static String callCmd(String cmd, String filter) {
String result = &&;
String line = &&;
Process proc = Runtime.getRuntime().exec(cmd);
InputStreamReader is = new InputStreamReader(proc.getInputStream());
BufferedReader br = new BufferedReader(is);
// 执行命令cmd,只取结果中含有filter的这一行
while ((line = br.readLine()) != null
&& line.contains(filter) == false) {
} catch (Exception e) {
e.printStackTrace();
* 网络是否可用
* @param context
public static boolean IsNetWorkEnable(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity == null) {
ToastUtil.showMessage(context, &无法连接网络&);
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info != null && info.isConnected()) {
// 判断当前网络是否已经连接
if (info.getState() == NetworkInfo.State.CONNECTED) {
} catch (Exception e) {
e.printStackTrace();
ToastUtil.showMessage(context, &无法连接网络&);
private static final int NETWORK_TYPE_UNAVAILABLE = -1;
// private static final int NETWORK_TYPE_MOBILE = -100;
private static final int NETWORK_TYPE_WIFI = -101;
private static final int NETWORK_CLASS_WIFI = -101;
private static final int NETWORK_CLASS_UNAVAILABLE = -1;
/** Unknown network class. */
private static final int NETWORK_CLASS_UNKNOWN = 0;
/** Class of broadly defined &2G& networks. */
private static final int NETWORK_CLASS_2_G = 1;
/** Class of broadly defined &3G& networks. */
private static final int NETWORK_CLASS_3_G = 2;
/** Class of broadly defined &4G& networks. */
private static final int NETWORK_CLASS_4_G = 3;
private static DecimalFormat df = new DecimalFormat(&#.##&);
// 适配低版本手机
/** Network type is unknown */
public static final int NETWORK_TYPE_UNKNOWN = 0;
/** Current network is GPRS */
public static final int NETWORK_TYPE_GPRS = 1;
/** Current network is EDGE */
public static final int NETWORK_TYPE_EDGE = 2;
/** Current network is UMTS */
public static final int NETWORK_TYPE_UMTS = 3;
/** Current network is CDMA: Either IS95A or IS95B */
public static final int NETWORK_TYPE_CDMA = 4;
/** Current network is EVDO revision 0 */
public static final int NETWORK_TYPE_EVDO_0 = 5;
/** Current network is EVDO revision A */
public static final int NETWORK_TYPE_EVDO_A = 6;
/** Current network is 1xRTT */
public static final int NETWORK_TYPE_1xRTT = 7;
/** Current network is HSDPA */
public static final int NETWORK_TYPE_HSDPA = 8;
/** Current network is HSUPA */
public static final int NETWORK_TYPE_HSUPA = 9;
/** Current network is HSPA */
public static final int NETWORK_TYPE_HSPA = 10;
/** Current network is iDen */
public static final int NETWORK_TYPE_IDEN = 11;
/** Current network is EVDO revision B */
public static final int NETWORK_TYPE_EVDO_B = 12;
/** Current network is LTE */
public static final int NETWORK_TYPE_LTE = 13;
/** Current network is eHRPD */
public static final int NETWORK_TYPE_EHRPD = 14;
/** Current network is HSPA+ */
public static final int NETWORK_TYPE_HSPAP = 15;
* 格式化大小
* @param size
public static String formatSize(long size) {
String unit = &B&;
float len =
if (len & 900) {
len /= 1024f;
unit = &KB&;
if (len & 900) {
len /= 1024f;
unit = &MB&;
if (len & 900) {
len /= 1024f;
unit = &GB&;
if (len & 900) {
len /= 1024f;
unit = &TB&;
return df.format(len) +
public static String formatSizeBySecond(long size) {
String unit = &B&;
float len =
if (len & 900) {
len /= 1024f;
unit = &KB&;
if (len & 900) {
len /= 1024f;
unit = &MB&;
if (len & 900) {
len /= 1024f;
unit = &GB&;
if (len & 900) {
len /= 1024f;
unit = &TB&;
return df.format(len) + unit + &/s&;
public static String format(long size) {
String unit = &B&;
float len =
if (len & 1000) {
len /= 1024f;
unit = &KB&;
if (len & 1000) {
len /= 1024f;
unit = &MB&;
if (len & 1000) {
len /= 1024f;
unit = &GB&;
return df.format(len) + &\n& + unit + &/s&;
* 获取运营商
public static String getProvider() {
String provider = &未知&;
TelephonyManager telephonyManager = (TelephonyManager) ConfigManager
.getContext().getSystemService(Context.TELEPHONY_SERVICE);
String IMSI = telephonyManager.getSubscriberId();
Log.v(&tag&, &getProvider.IMSI:& + IMSI);
if (IMSI == null) {
if (TelephonyManager.SIM_STATE_READY == telephonyManager
.getSimState()) {
String operator = telephonyManager.getSimOperator();
Log.v(&tag&, &getProvider.operator:& + operator);
if (operator != null) {
if (operator.equals(&46000&)
|| operator.equals(&46002&)
|| operator.equals(&46007&)) {
provider = &中国移动&;
} else if (operator.equals(&46001&)) {
provider = &中国联通&;
} else if (operator.equals(&46003&)) {
provider = &中国电信&;
if (IMSI.startsWith(&46000&) || IMSI.startsWith(&46002&)
|| IMSI.startsWith(&46007&)) {
provider = &中国移动&;
} else if (IMSI.startsWith(&46001&)) {
provider = &中国联通&;
} else if (IMSI.startsWith(&46003&)) {
provider = &中国电信&;
} catch (Exception e) {
e.printStackTrace();
* 获取网络类型
public static String getCurrentNetworkType() {
int networkClass = getNetworkClass();
String type = &未知&;
switch (networkClass) {
case NETWORK_CLASS_UNAVAILABLE:
type = &无&;
case NETWORK_CLASS_WIFI:
type = &Wi-Fi&;
case NETWORK_CLASS_2_G:
type = &2G&;
case NETWORK_CLASS_3_G:
type = &3G&;
case NETWORK_CLASS_4_G:
type = &4G&;
case NETWORK_CLASS_UNKNOWN:
type = &未知&;
private static int getNetworkClassByType(int networkType) {
switch (networkType) {
case NETWORK_TYPE_UNAVAILABLE:
return NETWORK_CLASS_UNAVAILABLE;
case NETWORK_TYPE_WIFI:
return NETWORK_CLASS_WIFI;
case NETWORK_TYPE_GPRS:
case NETWORK_TYPE_EDGE:
case NETWORK_TYPE_CDMA:
case NETWORK_TYPE_1xRTT:
case NETWORK_TYPE_IDEN:
return NETWORK_CLASS_2_G;
case NETWORK_TYPE_UMTS:
case NETWORK_TYPE_EVDO_0:
case NETWORK_TYPE_EVDO_A:
case NETWORK_TYPE_HSDPA:
case NETWORK_TYPE_HSUPA:
case NETWORK_TYPE_HSPA:
case NETWORK_TYPE_EVDO_B:
case NETWORK_TYPE_EHRPD:
case NETWORK_TYPE_HSPAP:
return NETWORK_CLASS_3_G;
case NETWORK_TYPE_LTE:
return NETWORK_CLASS_4_G;
return NETWORK_CLASS_UNKNOWN;
private static int getNetworkClass() {
int networkType = NETWORK_TYPE_UNKNOWN;
final NetworkInfo network = ((ConnectivityManager) ConfigManager
.getContext()
.getSystemService(Context.CONNECTIVITY_SERVICE))
.getActiveNetworkInfo();
if (network != null && network.isAvailable()
&& network.isConnected()) {
int type = network.getType();
if (type == ConnectivityManager.TYPE_WIFI) {
networkType = NETWORK_TYPE_WIFI;
} else if (type == ConnectivityManager.TYPE_MOBILE) {
TelephonyManager telephonyManager = (TelephonyManager) ConfigManager
.getContext().getSystemService(
Context.TELEPHONY_SERVICE);
networkType = telephonyManager.getNetworkType();
networkType = NETWORK_TYPE_UNAVAILABLE;
} catch (Exception ex) {
ex.printStackTrace();
return getNetworkClassByType(networkType);
public static String getWifiRssi() {
int asu = 85;
final NetworkInfo network = ((ConnectivityManager) ConfigManager
.getContext()
.getSystemService(Context.CONNECTIVITY_SERVICE))
.getActiveNetworkInfo();
if (network != null && network.isAvailable()
&& network.isConnected()) {
int type = network.getType();
if (type == ConnectivityManager.TYPE_WIFI) {
WifiManager wifiManager = (WifiManager) ConfigManager
.getContext()
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo != null) {
asu = wifiInfo.getRssi();
} catch (Exception e) {
e.printStackTrace();
return asu + &dBm&;
public static String getWifiSsid() {
String ssid = &&;
final NetworkInfo network = ((ConnectivityManager) ConfigManager
.getContext()
.getSystemService(Context.CONNECTIVITY_SERVICE))
.getActiveNetworkInfo();
if (network != null && network.isAvailable()
&& network.isConnected()) {
int type = network.getType();
if (type == ConnectivityManager.TYPE_WIFI) {
WifiManager wifiManager = (WifiManager) ConfigManager
.getContext()
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo != null) {
ssid = wifiInfo.getSSID();
if (ssid == null) {
ssid = &&;
ssid = ssid.replaceAll(&\&&, &&);
} catch (Exception e) {
e.printStackTrace();
* 检查sim卡状态
* @param ctx
public static boolean checkSimState() {
TelephonyManager tm = (TelephonyManager) ConfigManager.getContext()
.getSystemService(Context.TELEPHONY_SERVICE);
if (tm.getSimState() == TelephonyManager.SIM_STATE_ABSENT
|| tm.getSimState() == TelephonyManager.SIM_STATE_UNKNOWN) {
* 获取imei
public static String getImei() {
TelephonyManager mTelephonyMgr = (TelephonyManager) ConfigManager
.getContext().getSystemService(Context.TELEPHONY_SERVICE);
String imei = mTelephonyMgr.getDeviceId();
if (imei == null) {
imei = &000&;
public static String getPhoneImsi() {
TelephonyManager mTelephonyMgr = (TelephonyManager) ConfigManager
.getContext().getSystemService(Context.TELEPHONY_SERVICE);
return mTelephonyMgr.getSubscriberId();
public static CellInfo getNetInfo() {
CellInfo info = new CellInfo();
TelephonyManager mTelephonyManager = (TelephonyManager) ConfigManager
.getContext().getSystemService(Context.TELEPHONY_SERVICE);
String operator = mTelephonyManager.getNetworkOperator();
if (operator != null) {
/** 通过operator获取 MCC 和MNC */
if (operator.length() & 3) {
String mcc = operator.substring(0, 3);
String mnc = operator.substring(3);
info.setMcc(mcc);
info.setMnc(mnc);
int lac = 0;
int cellId = 0;
int phoneType = mTelephonyManager.getPhoneType();
if (phoneType == TelephonyManager.PHONE_TYPE_GSM) {
GsmCellLocation location = (GsmCellLocation) mTelephonyManager
.getCellLocation();
/** 通过GsmCellLocation获取中国移动和联通 LAC 和cellID */
lac = location.getLac();
cellId = location.getCid();
} else if (phoneType == TelephonyManager.PHONE_TYPE_CDMA) {
CdmaCellLocation location = (CdmaCellLocation) mTelephonyManager
.getCellLocation();
lac = location.getNetworkId();
cellId = location.getBaseStationId();
cellId /= 16;
if (lac == 0 || cellId == 0) {
List&NeighboringCellInfo& infos = mTelephonyManager
.getNeighboringCellInfo();
int lc = 0;
int ci = 0;
int rssi = 0;
for (NeighboringCellInfo cell : infos) {
// 根据邻区总数进行循环
if (lc == 0 || ci == 0) {
lc = cell.getLac();
ci = cell.getCid();
rssi = cell.getRssi();
// sb.append(& LAC : & + info.getLac());
// // 取出当前邻区的LAC
// sb.append(& CID : & + info.getCid());
// // 取出当前邻区的CID
// sb.append(& BSSS : & + (-113 + 2 * info.getRssi()) +
// &\n&); // 获取邻区基站信号强度
rssi = -113 + 2 *
} catch (Exception e) {
e.printStackTrace();
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:324152次
积分:3977
积分:3977
排名:第5286名
原创:55篇
转载:142篇
评论:57条
(1)(3)(6)(2)(7)(1)(5)(3)(9)(25)(4)(4)(11)(5)(1)(9)(6)(2)(2)(6)(1)(4)(8)(2)(6)(2)(1)(5)(4)(4)(1)(1)(1)(4)(1)(9)(2)(3)(3)(4)(1)(1)(2)(1)(1)(4)(1)(1)(2)(2)(1)(3)

我要回帖

更多关于 移动2g3g4g流量通用吗 的文章

 

随机推荐