.

.

.

.

.

临近过年了,又到了发送各类拜年短信的时刻了。虽然转发各类拜年短信已经显得越来越没年味,但是依然有很对人乐此不疲。为朋友送去祝福自然是好事,可是转发来的短信本身发送者就并没有投入太多的感情,那么发者无心自然看者也无心。近几年春节对于发来各类朗朗上口非原创短信的,我都一律回复“新年快乐。”四个大字加上对方的姓名。我觉得这平平淡淡的祝福足矣,何必让自己沉浸于信息的泡沫之中。短信只要用心发,让祝福真的充满自己的内心就可以了。

为了节省春节发短信的劳动力,自己动手开发了一个发短信的小程序。就在核心功能实现后进行全面测试的时候,发现群发时会弹出一个提示,如图1。

图1 发送大量短信的提示

在网上查阅了相关资料,说是Android系统有一个限制,一个应用程序一天之内发送短信数量如果超过100条就会弹出这个提示。

后来经过动手实验之后发现了解决办法:(以下解决办法是在Android模拟器中实现的,真机也许会有差异)

1.首先取得Root权限

C:\Users\yuhuashi>adb devices
List of devices attached
emulator-5554 device
emulator-5556 device

C:\Users\yuhuashi>adb -s emulator-5554 root
adbd is already running as root

2.进入 shell,利用 SQLite 工具修改系统安全配置

C:\Users\yuhuashi>adb -s emulator-5554 shell
#

要修改的数据库文件是:sqlite3 /data/data/com.android.providers.settings/databases/settings.db

# sqlite3 /data/data/com.android.providers.settings/databases/settings.db
sqlite3 /data/data/com.android.providers.settings/databases/settings.db
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>

3.首先看看这个库里面有什么表

sqlite> .tables
.tables
android_metadata bookmarks system
bluetooth_devices secure

4.通过名字判断应该就是修改 secure 这张表了,为了谨慎起见,再看看表结构吧

sqlite> .schema secure
.schema secure
CREATE TABLE secure (_id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT UNIQUE ON CONFLICT REPLACE,value TEXT);
CREATE INDEX secureIndex1 ON secure (name);

5.嗯,应该是它,用键值对的形式存储的配置信息。那么我们向里面插入两条设置吧。

sqlite> insert into secure(name, value) values('sms_outgoing_check_max_count', 99999);

sqlite> insert into secure(name, value) values('sms_outgoing_check_interval_ms', 0);

6.好了,看看写入成功了没有

sqlite> select * from secure order by _id desc;
select * from secure order by _id desc;
63|sms_outgoing_check_interval_ms|0
62|sms_outgoing_check_max_count|99999

7.OK,我们的设置已经写进去了,重启模拟器再次运行程序群发短信就没有弹出刚才那个消息,说明我们的配置成功了。

AD:项目地址:http://git.oschina.net/yuhuashi/AndroidTest
这个
项目本来就是打算用来练习和学习Android的,进入第一个Activity之后会看到对于各种测试窗口的分发导航按钮(目前只有一个:))。点击第一个“短信群发”按钮就可以使用这个小程序了。

参考文献:

解决Android系统短信群发时提示“正在发送大量短信” http://www.cnblogs.com/quejuwen/archive/2013/02/28/2936976.html

Android sending lots of SMS messages http://stackoverflow.com/questions/1663514/android-sending-lots-of-sms-messages

Android 提示应用“正在发送大量短信”的解决办法的更多相关文章

  1. Android 短信模块分析(四) MMS之短信的发送与接收

     MMS之短信的发送与接收分析: 一.信息发送: com.android.mms.data.WorkingMessage.java 类 send()函数: public void send() { . ...

  2. Android黑科技,读取用户短信+修改系统短信数据库

    安卓系统比起ios系统最大的缺点,相信大家都知道,就是系统安全问题.这篇博客就秀一波“黑科技”. 读取用户短信 Android应用能读取用户手机上的短信,相信已经不是什么新鲜事,比如我们收到的短信验证 ...

  3. 四:java调接口实现发送手机短信验证码功能

    1.点击获取验证码之前的样式: 2.输入正确的手机号后点击获取验证码之后的样式: 3.如果手机号已经被注册的样式: 4.如果一个手机号一天发送超过3次就提示不能发送: 二:前台的注册页面的代码:reg ...

  4. Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用

    近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限, ...

  5. 发送SMS短信(JSON) 转载

    http://blog.csdn.net/ldl22847/article/details/42553883 public   static string GetMobileConfByUserId( ...

  6. SNF开发平台WinForm之十二-发送手机短信功能调用-金笛-SNF快速开发平台3.3-Spring.Net.Framework

    1.调用前组装参数 2.调用发送信息服务脚本   .调用前组装参数: BaseSendTaskEntity entity = new BaseSendTaskEntity(); entity.Mess ...

  7. 用Java通过串口发送手机短信

    用Java通过串口发短信其实很简单,因为有现成的类库供我们使用.有底层的类库,也有封装好一点的类库,下面我介绍一下在 Win32 平台下发送短信的方法. 如果你想用更底层的类库开发功能更强大的应用程序 ...

  8. 利用java实现的一个发送手机短信的小例子

    今天闲来无事,在微博上看到一个关于用java实现的一个发送手机短信的程序,看了看,写的不太相信,闲的没事,把他整理下来,以后可能用得着 JAVA发送手机短信,流传有几种方法:(1)使用webservi ...

  9. C#简单实现发送手机短信

    偶然想起,像编写一个从电脑向手机发送短信的程序,从网上查找到有三种方式:(1)使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册;(2) ...

随机推荐

  1. 纯css打造美丽的html表格

    花了点时间,自己做了个美丽的html表格,採用技术有css,html,其它的废话我也不多说了,直接上图.上代码. 界面图片: HTML代码: <%@ page language="ja ...

  2. C#数组之 []、List、Array、ArrayList应用

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  3. FreeSWITCH媒体转码配置

    一.说明: FreeSWITCH版本1.6.13二.测试准备 软电话A的语音编码只配置iLBC:软电话B的语音编码只配置PCMU: A->B,编码协商失败,收到488消息. 三.修改文件vars ...

  4. 缓存机制和Hibernate的缓存机制介绍

    缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能.缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事 ...

  5. http 状态码 码表

    HTTP状态码详解 - 查询资料 1xx消息 这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束.由于HTTP/1.0协议中没有定义 ...

  6. easyui中combobox的值改变onchang事件

    今天在公司里,那jquery中的easy-ui-里面的combobox,真的郁闷死了! 把郁闷的事情记下来,下次就不会犯错了! 首先,肯定少不了,引入jquery的js文件!请大家注意了! 下面是代码 ...

  7. Koa 框架 的错误处理

    默认情况下Koa会将所有错误信息输出到 stderr,除非 NODE_ENV 是 "test".为了实现自定义错误处理逻辑(比如 centralized logging),您可以添 ...

  8. Android studio界面相关设置

    用惯了emacs的操作方式,每当使用一款新的编辑器的时候,第一个想到的就是这个工具有没有emacs的快捷键,Android studio也是一样的. 1. Android studio设置emacs的 ...

  9. 关于 IOS code signe 和 Provisioning Files 机制 浅析

    可以先读下这个译文. http://www.cnblogs.com/zilongshanren/archive/2011/08/30/2159086.html 读后,有以下疑惑. 在mac 机上生成的 ...

  10. iOS-一个弹出菜单动画视图开源项目分享

    相似于Tumblr公布button的弹出视图 使用非常easy: 初始化: @property (nonatomic, strong) XWMenuPopView *myMenuPopView; - ...