Android SMS捕捉

问题描述:

我想开发这样的应用程序。在安装时我会有两个选择,通过我的应用程序或默认的短信应用程序发送短信。Android SMS捕捉

有没有什么方法可以捕捉到传出的短信?

您可以添加以下意图过滤你的活动的AndroidManifest.xml描述,这将允许用户选择用于发送短信的应用,当他们点击的联系人和短信应用发送短信行动:

<intent-filter> 
    <action android:name="android.intent.action.SENDTO"></action> 
    <data android:scheme="smsto"></data> 
    <category android:name="android.intent.category.DEFAULT"></category> 
</intent-filter> 

这将传递一个数据uri,格式为smsto:// target-number,您的应用需要照顾文本输入并使用SMSManager发送SMS。

+0

我在AndroidManifest.xml中添加了intent过滤器。应用程序安装在我的Samsung Galaxy上。但是现在我的应用程序在发送短信时不会收到通知。总之,没有任何反应。我是否需要进行一些更改以使我的应用程序成为默认SMS客户端 – 2010-08-31 02:05:21

+0

将弹出一个对话框,让您在默认SMS应用程序和您的应用程序之间进行选择。这可能是三星在其Launcher应用程序中做出的改变,也许他们没有使用任何股票意图来启动他们的短信应用程序。您可以通过查看DDMS中的调试器日志并将SMS发送给某人来查看他们正在使用的意图。 – Frank 2010-08-31 04:28:52

+0

谢谢弗兰克。 短信应用程序检测也可以在模拟器上工作。截至目前,我已经测试过它不适用于hansets(sony xperia)和模拟器。有一款名为ChompSmS的应用程序可以在android市场上购买(并可以免费下载.apk),它具有与我们正在讨论的功能相同的功能。 安装Chomp短信到我的模拟器后,当我尝试通过模拟器发送短信,它给了我发送短信从默认短信应用程序或Chomp SMS的选项 – 2010-09-02 09:30:42

您可以结帐android-smspopup的src代码。