Android的广播接收器从短信关键字开始 [英] Android Broadcast Receiver start from text message keyword
问题描述
如何设置关键词,从短信发起广播接收器?我得到了我的广播接收器工作,问题是它收到任何短信开始的活动,我只是需要它来开始接收1个或2个关键字酒店和/或楼我怎么做这个....谢谢。下面是我的code
-manifest-
- 实际接收课堂
公共类SMSReceiver扩展广播接收器{
公共无效的onReceive(上下文的背景下,意图意图){
捆绑包= intent.getExtras(); 对象信息[] =(Object []对象)bundle.get(的PDU);
SmsMessage smsMessage [] =新SmsMessage [messages.length]
对于(INT N = 0; N< messages.length; N ++){
smsMessage [η] = SmsMessage.createFromPdu((字节[])消息[N]);
} //显示第一条消息
吐司面包= Toast.makeText(背景下,收到的短信:+ smsMessage [0] .getMessageBody(),Toast.LENGTH_LONG);
toast.show(); //然后启动一个活动 意图I =新意图(背景下,AppActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(ⅰ);
的广播接收器
听的基础上的意图<意向滤光器>
。该数据过滤器不提供一种过滤你的要求,因为它并不在 SmsMessage.getMessage过滤器()
。你除了可以收听短信要做的就是扫描每封邮件的关键字,然后启动所需的活动。
How to set keyword to initiate Broadcast Receiver from text message? I got my Broadcast Receiver working, problem is it starts activity on receiving any text message and I just need it to start on receiving 1 or 2 keywords "Hotel and/or House" how do i do this .... Thank you. Below is my code
-manifest- " "
-actual receiver class- public class SMSReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
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]);
}
//show first message
Toast toast = Toast.makeText(context, "Received SMS: " + smsMessage[0].getMessageBody(), Toast.LENGTH_LONG);
toast.show();
//and then start an activity
Intent i = new Intent(context,AppActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
The BroadcastReceiver
listens to Intents based on an <intent-filter>
. The data filter doesn't provide kind of filtering you're asking for because it doesn't filter on SmsMessage.getMessage()
. What you can do in addition to listening for an SMS is scan each message for the keyword and then start the desired activity.
这篇关于Android的广播接收器从短信关键字开始的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!