发送短信Android时出错

时间:2011-12-14 05:09:32

标签: android sms

我正在尝试创建一个简单的应用程序,可以从我的Android手机发送文本消息到另一部手机,但目前我正在使用模拟器。我得到的问题是该应用程序意外停止。

我查看了我的logCat,我注意到了这行

  

12-13 23:36:49.611:ERROR / AndroidRuntime(29001):java.lang.SecurityException:发送短信:用户10131没有android.permission.SEND_SMS。

但这让我感到困惑,因为在我的AndroidManifest.xml中我有这段代码

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="net.learn2develop.SMSMessaging"
      android:versionCode="1"
      android:versionName="1.0">


    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".SMS"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>


        </activity>

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

    </application>
</manifest>

我也做了一个步骤,我在这一行崩溃

sms.sendTextMessage(phoneNumber, null, message, sentPI, deliveredPI);

参数如下

  • phoneNumber:我的手机号码为格式为“XXXXXXXXXX”的字符串

  • null:null

  • 消息:“测试”

  • sentPI = PendingIntent.getBroadcast(this,0,               新意图(SENT),0);

  • PendingIntent deliverPI = PendingIntent.getBroadcast(this,0,         new Intent(DELIVERED),0);

SENT

  

String SENT =“SMS_SENT”;

和DELIVERED

  

String DELIVERED =“SMS_DELIVERED”;

我不知道现在该做什么。我用谷歌搜索了,我没有看到其他人遇到我的问题。

任何帮助表示赞赏! 谢谢, 克里斯

1 个答案:

答案 0 :(得分:3)

<uses-permission ...>代码必须位于<manifest>代码下,而不是<application>代码。