关于android 如何才能实现GPRS上网功能的问题。(关键词:apn设置和获取 AT指令 46000/2)

aiguozhou 2011-11-15 05:05:00
现在在TD/GSM双模开发板子上测试,通过USB方式连接电脑启动android模拟器可以打电话,但是无法上GPRS.有时候能通过xxx_ril.c里面的函数requestSetupDataCall() 启动PPP拨号上网服务。
但是只能连接到本地的网络,不是真正的GPRS网。 大部分时间都是连不上网络(没有显示G的图标)。
无法在模拟器中设置APN为46000信息,可以正常设置46002。按照网上http://myqdroid.blog.51cto.com/2057579/389134 博主的方法设置还是不行。
请问要如何才能实现GMS卡能上GPRS网络。能提供问题定位思路也行。

adb logcat 部分打印出来怀疑有问题的日志如下:

W/GSM ( 138): Can't open /system/etc/spn-conf.xml //这里是不是要用ROOT权限修改后编译
D/GSM ( 138): Get PreferredAPN
D/TelephonyProvider( 138): Setting numeric '46002' to be the current operator


AT send : |AT+CGREG?|
AT receive: |+CGREG: 0,1|
AT receive: |OK|

manual operator selection,显示的是46000,但是前面为何有获取到的是46002(46000和46002都是中国移动国际标示),对GPRS功能有影响么?

AT send : |AT+COPS?|
AT receive: |+COPS: 1,2,"46000",2|
AT receive: |OK|
...全文
642 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
aiguozhou 2011-11-29
  • 打赏
  • 举报
回复
现在已经好了,可以连上了ppp了。
和46002 和46000 都没有关系。任一一个都可以,
aiguozhou 2011-11-16
  • 打赏
  • 举报
回复
spn-conf.xml 这个文件我修改过,里面之前只有美国等地方的MMC+MNC信息。所以我在文件中添加了46000测试,但是模拟机上面的apn中还是无法设置和获取apn=460+00,很奇怪设置46002没问题。

从上面的指令来看已经获取到的运营商是46000 但是为何又要设置46002为当前的操作列?
Setting numeric '46002' to be the current operator

另:spn-conf.xml这个文件我有修改过,后来拷贝到目录中的,所属权限变成了不是root的用户组了,不知道是否有影响。

to:cdbdyx
我是刚学做这一块,请多指教。我的联系方式 aiguozhou@gmail.com
充电宝111 2011-11-15
  • 打赏
  • 举报
回复
楼主也做双模啊,我们也在做,能交流一下么?cdbdyx@hotmail.com
Nico 2011-11-15
  • 打赏
  • 举报
回复
/system/etc/spn-conf.xml
这个文件是你当前上网的时候用到的apn。。
你用真机试试吧。
如果在真机上也不行,可能要去载一个这个xml文件。push到etc目录下去了。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧