观察短信在模拟器中发送应用程序

时间:2012-01-24 17:31:30

标签: android android-emulator sms

有没有办法从模拟器中读取传出的短信?

在logcat中我看到了这条消息:

D/SmsStorageMonitor(  738): SMS send size=0 time=1327423357467

有没有办法获得接收器和内容?

传出的短信似乎不会保存在模拟器中。这意味着Messenger应用程序向我显示没有短信。

3 个答案:

答案 0 :(得分:6)

是的,只需在您的应用中创建一项服务,并观察所有传出的短信,只需参考下面的代码。

public class SMSObserver extends BroadcastReceiver 
{
    static final String ACTION ="android.provider.Telephony.SMS_SENT";

    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
        if (intent.getAction().equals(ACTION)) 
        {
                 //your action code here
        }            
    }

答案 1 :(得分:1)

如果您在从应用程序发送时使用本地数据库存储传出消息,则可以使用。

答案 2 :(得分:1)

尝试观察内容解析器,如下面的代码:

ContentResolver contentResolver = getContentResolver();
contentResolver.registerContentObserver("content://sms", true, yourObserver);