私はAndroid SDKを使いこなしていましたが、SMSメッセージを受信する例の1つでは、onReceive Intent.getExtras()。私はその行の前後にログを追加して、getExtrasが実行された後はログを記録しませんでした。 Androidエミュレータのバージョンは4.0.3です。 誰も私が見ていないこのコードの欠陥を指摘することはできますか、この一見無作為で不満足な問題に対処するか解決策を提示できますか?Androidプログラミング:Intent.getExtras()は何らかの方法で実行フローを停止しているようです
public class SmsReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Log.i("smsreceiver", "Intent: " + intent.getAction()); //Shows up in LogCat normally
Bundle bundle = intent.getExtras();
Log.i("smsreceiver", "after"); //this is never reached, and nothing after this is executed
Object messages[] = (Object[]) bundle.get("pdus");
SmsMessage smsMessage[] = new SmsMessage[messages.length];
for (int n = 0; n < messages.length; n++)
{
smsMessage[n] = SmsMessage.createFromPdu((byte[])messages[n]);
}
Log.i("smsreceiver", "Message: " + smsMessage[0].getMessageBody());
}
}
バージョンでの作業は4.0.3です。のみまたはテスト? – NovusMobile
私がテストしているバージョンは4.0.3です。私はまだ他のバージョンでそれを試していない。 – user1325633
onReceive()は戻ってきますか? –