android 自定义发彩信实现(不调用系统发彩信界面)

转载地址:http://blog.csdn.net/aniuaniuaniuaniu/article/details/7225967

最近几天,因为项目需要,发彩信界面不再是调用系统的界面,即不跳转到短信界面,这个功能起初感觉应该很简单,但是真正做起来后,发现其实没有想象中那么简单,刚做完项目,趁头脑清晰,先把代码写下来先:

这几天为了这个项目,网上找了不少资料,大都资料都差不多,对于如何不跳用系统界面发彩信都有讲解,但是这个的前提是apn必须是wap,当如果是net时,因为连接超时而无法发送,正以内发彩信必须通过wap接入点才能发送,即使是在系统界面发彩信时,如果接入点不是wap,则会自动切换过来,待发送完后再切换回去,所以这个模块的核心,其实就是,如何在调用发彩信时,切换apn至wap,待发送完毕后再切换回去。。。

首先,根据不同移动供应商,需要设置不同的url和proxy


方法实现如下:


当当前的apn接入点不是发彩信所需要的wap时,就需要切换:


所有的apn信息都是存在数据表里,可以通过adb pull data/data/com.android.providers.telephony d:/ 直接拷出来,不过前提是手机有root权限:

取wap接入点的id方法中,就是从carriers表中读取到current=1的条目,只有这种条目能够显示在手机的apn设置中,即:

接下来这个方法,是处理发彩信请求:


发彩信程序主入口:



posted @ 2012-04-13 11:19  andriod2012  阅读(480)  评论(0编辑  收藏  举报