如何自动回复文字?

发布于 2024-11-17 06:19:14 字数 2003 浏览 3 评论 0原文

好吧,这是我的源代码.. 总是出错并出现强制关闭错误。 这是代码,有人可以告诉我是否需要进行任何更改..

我有 2 个类,一个发送消息,一个接收消息...开始吧..

我的第一个类有一个发送文本的方法..

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);
    }
    }

}

Okay so here is my source code.. Something keeps going wrong and getting an Force close error.
Here is the code, can someone tell me if i need to make any changes..

I have 2 classes one that sends the message and one that recieves... Here we go..

My first classes that has a method to send a text..

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
        }

    }

Second Class that receives and responds automatically if a text says a certain thing..

@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);
    }
    }

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

骑趴 2024-11-24 06:19:14

没有任何日志很难说,但很可能你有权限。您需要在清单中设置发送、接收、读取和写入的权限。

Without any logs it's difficult to say, but most likely you have a permission. You need to have permissions set in your manifest to Send, Receive, and Read, and Write.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文