短信广播接收器不在手机中工作

时间:2014-11-24 11:51:15

标签: android broadcastreceiver

我从stackoverflow中读过很多问题,但找不到正常工作的代码。

我的广播接收者代码:

public class incom extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
 Toast.makeText(context, "received",Toast.LENGTH_LONG).show();
    }
}

我的清单代码:           

   <uses-sdk
    android:minSdkVersion="10"
    android:targetSdkVersion="19" />

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <receiver android:name="com.androidexample.broadcastreceiver.incom">   
        <intent-filter android:priority="999">
            <action android:name="android.provider.Telephony.SMS_RECEIVED" />
        </intent-filter>
    </receiver>

</application>

我尝试了很多解决方案。它可以在模拟器中运行但不能在手机上运行。有人帮忙。谢谢。我也试过最高整数值

1 个答案:

答案 0 :(得分:0)

而不是

  <receiver android:name="com.androidexample.broadcastreceiver.incom">   
        <intent-filter android:priority="999">
            <action android:name="android.provider.Telephony.SMS_RECEIVED" />
        </intent-filter>
    </receiver>

更改为

<receiver android:name="com.androidexample.broadcastreceiver.incom" > 
<intent-filter> 
        <action android:name="android.provider.Telephony.SMS_RECEIVED"
            android:priority="999"
             /> 
</intent-filter> 
</receiver>