0
我已經經歷過每一個我能找到的帖子,而且我仍然無法讓我的接收器對任何事情做出反應。我的XML:廣播接收器短信不能觸發
<receiver android:name=".CollageSMSReceiver"
android:enabled="true"
android:exported="true" >
android:permission="android.permission.BROADCAST_SMS">
<intent-filter android:priority="2147483647">
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</receiver>
這是一個大的XML所以在上面我有:
<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>
和我的Java:
public class CollageSMSReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.i("sms","fired up");
Object[] pdus = (Object[]) intent.getExtras().get("pdus");
SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdus[0]);
String sender = "";
StringBuilder text = new StringBuilder();
// get sender from first PDU
sender = currentMessage.getOriginatingAddress();
for (int i = 0; i < pdus.length; i++) {
currentMessage = SmsMessage.createFromPdu((byte[]) pdus[i]);
text.append(currentMessage.getDisplayMessageBody());
}
String phoneNumber = currentMessage.getDisplayOriginatingAddress();
String message = currentMessage.getDisplayMessageBody();
}
}
感謝您能夠在任何援助渲染。