2011-06-23 11 views
-2

これは私のソースコードです。何かが間違って進み、強制終了エラーが発生します。ここ は私の最初のテキストに自動的に応答する方法は?

..私は2クラスにここで行く... recievesメッセージと1を送るものを持っている

..私は何も変更する必要がある場合、誰かが私を伝えることができ、コードであります受信して、テキストがあるものを言う場合は、自動的に応答し、テキスト..

import android.app.Activity; 
import android.app.PendingIntent; 
import android.content.Intent; 
import android.os.Bundle; 
import android.telephony.SmsManager; 
import android.widget.Toast; 

public class InfoSender extends Activity { 
private smsListener smsReceiver; 
public String phoneNumber; 
public String message; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main_menu); 
} 

    public void send(String phoneNumber, String message){ 

     phoneNumber = smsListener.phnNumber; 

      PendingIntent pi = PendingIntent.getActivity(this, 0, 
        new Intent(this, InfoSender.class), 0);     
       SmsManager sms = SmsManager.getDefault(); 
       sms.sendTextMessage(phoneNumber, null, message, pi, null); 

      Toast.makeText(getApplicationContext(), "Details about house "+housenumber+"sent", 6); 



      //Do nothing 
     } 

    } 

第二のクラスを送信するためのメソッドを持つクラス...

@Override 
public void onReceive(Context context, Intent intent) { 
    Bundle bundle = intent.getExtras(); 
    SmsMessage[] msgs = null; 
    String msg = ""; 

    if(bundle != null){ 

    } 
    Object[]pdus = (Object[])bundle.get("pdus"); 
    msgs =new SmsMessage[pdus.length]; 

    for(int i=0; i<msgs.length; i++){ 
     msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]); 
     msg += "Sms from "+msgs[i].getDisplayOriginatingAddress(); 

     phnNumber = msgs[i].getOriginatingAddress(); 
     msgBody = msgs[i].getMessageBody().toString(); 
    } 

     if(msgBody.equalsIgnoreCase("0")){ 
      String phoneNumber = phnNumber; 
      String message = sender.message; 

     sender.send(phoneNumber, message); 
    } 
    } 

}

+0

エラーが正確であるかどうかを確認するためにlogcatログを投稿できる場合は役に立ちます。 eclipseでlogcatを有効にするには、(メニューバーで)Window-> Show View-> Other-> Android-> Logcatに移動します。 – Ryan

+2

このコードのコンテキストや作成しているアプリの説明がないと、これは本当に難しいことです。 – Phil

答えて

0

ログがないと言うことはできませんが、ほとんどの場合、許可を得ている可能性があります。マニフェストで送信、受信、読み取り、および書き込みに設定されているアクセス許可が必要です。

関連する問題