通过Java ME的调用本机短信中心来识别运营商
System.getProperty("wireless.messaging.sms.smsc");
返回的String就是短信中心
参考下面的数据
北京移动 +8613800100500 北京联通 +8613010112500
上海移动 +8613800210500 上海联通 +8613010314500
天津移动 +8613800220500 天津联通 +8613010130500
重庆移动 +8613800230500 重庆联通 +8613010831500
+86(中国)XXX(运营商代码,130是联通,138是移动)XXXXX(区号)500
用途
1.识别运营商,发送不同的代收费短信到不同的特服号。(变相禁止联通用户使用移动的短代产品)
2.利用区号定位用户,不过联通的没啥规律,需要查表。
问题
首先需要支持wma1.0,然后是终端的限制,经过测试,nokia s60v2 s60v3和s40v3,se jp6以上都可以获取该属性,moto ezx返回为空。
如果大家有更多的测试结果,请留言,谢谢。