4
나는 안드로이드에 익숙하며 몇 가지 sms_receive 일에 안드로이드 2.1을 사용하고 있습니다. SMS 수신시 작동하지 않습니다 ... SMS 수신시 아무런 반응이 없으며 강제 종료했습니다. AndroidManifest.xml에 대한안드로이드에서 SMS를받는 방법?
코드 :
<uses-sdk android:minsdkversion="7" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<application android:label="@string/app_name">
<activity>
android:name=".SmsReceiver"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="com.example.smsreceiver.SmsReceiver" android:enabled="true">
<intent-filter android:priority="2147483647">
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
</application>
클래스 RSMSActivity :
public class RSMSActivity extends BroadcastReceiver {
private static final String SHORTCODE = "55443";
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
Object[] messages = (Object[]) bundle.get("pdus");
SmsMessage[] sms = new SmsMessage[messages.length];
// Create messages for each incoming PDU
for (int n = 0; n < messages.length; n++) {
sms[n] = SmsMessage.createFromPdu((byte[]) messages[n]);
}
for (SmsMessage msg : sms) {
// Verify if the message came from our known sender
if (TextUtils.equals(msg.getOriginatingAddress(), "09358921973")) {
Toast.makeText(context, "Received message from the mothership: " + msg.getMessageBody(),
Toast.LENGTH_SHORT).show();
}
}
}
}