私は受信したことに応答するだけの簡単なアンドロイドアプリを作成しています。 私はbraodcastreceiverを使用してSMSを受信しています。私はそれが強制近くを言うSDK 2.1 AVD上でこの活動を実行し、そのポートにSMSを送信すると活動のための コードBroadCastReceiver Force Close for SMS受信
package com.om;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.widget.Toast;
import android.telephony.SmsManager;
import android.telephony.SmsMessage;
public class MyTest extends Activity {
public static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
/** Called when the activity is first created. */
BroadcastReceiver smsReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context _context, Intent _intent) {
System.out.println("SMS Received");
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
IntentFilter filter = new IntentFilter(SMS_RECEIVED);
registerReceiver(smsReceiver, filter);
}
}
です。 コードに誤りがありますか教えてください。 ありがとうございます。
あなたは間違いなくlogcatと、アプリケーションをクラッシュさせる行を投稿する必要があります。あなたはアプリケーションマニフェストであなたの受信機を宣言しましたか? –
Bicouが言ったように、何が起こっているかについて私たちが何かを言ってくれるように、近い将来のスタックトレースを表示する必要があります。これはおそらくそれを引き起こしていませんが、System.out.printlnを使用するのではなく、AndroidロギングシステムLog.d( "smsReceiver"、 "SMS Received")を使用する必要があります –