`
dss16694
  • 浏览: 144173 次
社区版块
存档分类
最新评论

android无法自动识别sim卡中短信中心号码(SMSC刷新error)的解决方法

 
阅读更多

前几日淘宝上买了一张联通3G的电话卡,拿到后迫不及待的放入手机想体验一下3G网络的快感,确实,网速很快,刷新网页那叫一个爽啊。不过没多久就遇到问题,短信能收不能发,*#*#4636#*#*进入手机信息,SMSC刷新出现“refresh error”,心想简单,自己写入后更新就行了;结果更新未出问题,但刷新后依然“refresh error”。

开始网上各种找,各种方法觉试了个遍,无解,唯一一条可能有用的就是让我去联通营业厅换卡。说实话卡没问题,至少放在媳妇儿的MT15I上正常工作。然后就怀疑是第三方ROM的问题,刷回官方ROM依然error,崩溃~

 

突然想到既然是自用,就无所谓自动识别和可以在某界面更换该号码,刚巧CM9的源代码也同步了一份,于是就从Mms的发送代码开始查起,最终定位到framewor/android/telephony下的SmsManager类,通过短信中心发送消息的代码就在这里面,定位参数scAddress,该参数为短信中心号码,既然系统无法读取那就在代码中写死该参数就可以了,相应位置加入“scAddress="+8613010470500"”,当然不止一处。编译,将编译好的framework.jar通过adb push进手机,重启,发送消息,成功!!!!!!!!!!!

 

下面是基于我编译的代码进行修改的方法,不涉及代码的修改和编译,所以仅需要java环境和smali以及baksmali即可(当然,解压缩的软件必备);

1.将你手机中的framework.jar拷贝到电脑中。

2.用smali将framework.jar反编译,得到一个包含一堆smali文件的文件夹,比如是framework;

3.将附件的SmsManager.smali文件拷贝到\framework\android\telephony文件夹下,替换原文件,用文本编辑器打开SmsManager.smali,搜索"+8613010470500",将其替换为你所使用的短信中心号码(3处),保存。

4.用baksmali将framework文件夹编译为classes.dex。

5.将1中的framework.jar用压缩软件打开,将4中编译所得的classes.dex替换进压缩包中。

6.将5中所得的framework.jar放回手机的/system/framework,替换源文件,记得改权限。

 

 

补充一点,该方法对所有android系统均有效,因为从2.1到4.0我没发现该类有变更过。

 

 

分享到:
评论
12 楼 zhufoxmailcn 2015-09-16  
有希望了!
但原能解决小米二电信与4G卡的短信兼容性问题
11 楼 dss16694 2013-10-24  
hotdll 写道
l楼主一不小心泄露了自己的手机号码?

那是短信中心的号码。
10 楼 hotdll 2013-10-13  
l楼主一不小心泄露了自己的手机号码?
9 楼 dss16694 2012-12-26  
a15072085330 写道
换卡可以解决这个吗?   换手机能不能解决啊?  我的是工程机,可以换量产机! 换了是不是就显示出来了?  我的是小卡,插三星 GALAXY S III  可以显示,可以打电话!

确认一下,你说的识别不了是指插卡开机后无信号呢还是可以打电话不能发短信呢?
8 楼 a15072085330 2012-12-21  
换卡可以解决这个吗?   换手机能不能解决啊?  我的是工程机,可以换量产机! 换了是不是就显示出来了?  我的是小卡,插三星 GALAXY S III  可以显示,可以打电话!
7 楼 a15072085330 2012-12-21  
dss16694 写道
a15072085330 写道
大神啊,大神!  可以帮帮我吗?  我的SIM卡识别不了,你这教程我不懂, smali  这个怎么用我都不知道,在网上找教程也看不懂!  如果可以的话我想你帮帮我,万分感谢! 我的QQ是  657423521

不懂android相关文件的编译与反编译的话比较难办的,不建议折腾,考虑去营业厅换卡。

换卡可以解决这个吗?   换手机能不能解决啊?  我的是工程机,可以换量产机! 换了是不是就显示出来了?  我的是小卡,插三星 GALAXY S III  可以显示,可以打电话!
6 楼 dss16694 2012-12-20  
a15072085330 写道
大神啊,大神!  可以帮帮我吗?  我的SIM卡识别不了,你这教程我不懂, smali  这个怎么用我都不知道,在网上找教程也看不懂!  如果可以的话我想你帮帮我,万分感谢! 我的QQ是  657423521

不懂android相关文件的编译与反编译的话比较难办的,不建议折腾,考虑去营业厅换卡。
5 楼 a15072085330 2012-12-17  
大神啊,大神!  可以帮帮我吗?  我的SIM卡识别不了,你这教程我不懂, smali  这个怎么用我都不知道,在网上找教程也看不懂!  如果可以的话我想你帮帮我,万分感谢! 我的QQ是  657423521
4 楼 dss16694 2012-09-05  
ry31 写道
试过了,果然搞定啊,谢谢啦!

不客气,不过我到现在还没弄清楚是什么原因造成了,刚换了个手机,卡放在里面短信中心读取正常,比较诡异的问题
3 楼 ry31 2012-09-01  
试过了,果然搞定啊,谢谢啦!
2 楼 dss16694 2012-09-01  
undine 写道
你好啊 ,我ms2换了张联通的64K3G卡也发生你这样的情况啊。
想试试你说的这种方法,感觉从底层写死的话,应该可以从根本上解决问题。
但是似乎没有看到你文中所提那个SmsManager.smali文件,不知道可不可以发一份给我。如果你能帮我把+8613010733500这个号码编译一个进去就更感谢了。

汗,忘记放附件了
smali文件可以直接文本格式打开,替换就是了。
1 楼 undine 2012-08-31  
你好啊 ,我ms2换了张联通的64K3G卡也发生你这样的情况啊。
想试试你说的这种方法,感觉从底层写死的话,应该可以从根本上解决问题。
但是似乎没有看到你文中所提那个SmsManager.smali文件,不知道可不可以发一份给我。如果你能帮我把+8613010733500这个号码编译一个进去就更感谢了。

相关推荐

Global site tag (gtag.js) - Google Analytics