Android:注册应用程序发送/撰写短信

时间:2012-07-26 20:47:45

标签: android sms

如何注册我的应用程序,以便当我按下撰写短信按钮甚至发送短信时,我的应用程序出现在对话框中使用完成操作?我已将该代码放到Manifest文件中(注意NewMessageActivity发送短信)但它不起作用。

    <activity
        android:name=".NewMessageActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.DEFAULT" />

            <action android:name="android.intent.action.SENDTO" />

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data android:mimeType="text/plain" />
            <data android:scheme="sms" />
            <data android:scheme="smsto" />
        </intent-filter>
    </activity>

有任何帮助吗?有什么建议 ?谢谢!

3 个答案:

答案 0 :(得分:0)

尝试添加此权限:

<uses-permission android:name="android.permission.SEND_SMS"/>

答案 1 :(得分:0)

所以我终于在以下链接android: register application to receive sms

中找到了正确的答案
<activity
        android:name="az.elman.grouptextfree.NewMessageActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />                
            <data android:mimeType="vnd.android-dir/mms-sms" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.SENDTO" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="sms" />
            <data android:scheme="smsto" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.SEND" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="text/plain" />
        </intent-filter>
    </activity>

另请不要忘记添加此权限<uses-permission android:name="android.permission.SEND_SMS"/> 如Jbad26所写,你的清单文件。

答案 2 :(得分:0)

Android在KitKat上引入了“默认短信应用”的概念。也就是说,用户可以通过设置来设置将要处理SMS的发送/接收的应用。因此,如果您希望您的应用程序列在默认的SMS应用程序类别下,您的应用程序需要处理SMS,MMS等的发送/接收..请参阅以下链接以获取更多信息

http://android-developers.blogspot.com/2013/10/getting-your-sms-apps-ready-for-kitkat.html