0
我开始从一些的onReceive服务,当服务将结束我想从该服务的一些值回的onReceive()..启动服务并返回一个值
这就是我的代码:
public class SmsListener 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();
String s=smsMessage[0].getMessageBody();
//START A SERVICE
Intent serviceIntent = new Intent(context,Lineeq.class);
serviceIntent.putExtra("message",s);
context.startService(serviceIntent);
//这里我需要从服务
abortBroadcast();
}
any ideas?
Thanks.
因此,数据将被转移到接下来要去的服务之后?我认为你弄错了我编辑的问题(“从服务中获得一些价值回到OnReceive()”).. – mynavy
@mynavy:我不知道它是什么“onReceive()”会这个'BroadcastReceiver'实例将被框架释放,并最终被垃圾收集。之后的某个时间,服务将运行并执行一些操作。 – CommonsWare
您有任何建议如何处理它?得到我需要的短消息,他的设备将计算一些公式与他通过短信获得的数据,它将在后台服务... – mynavy