7

我想告诉我的服务在完成执行操作后要做什么。所以我想发送服务 a PendingIntent,所以它可以启动它(通过使用PendingIntent.send()

PendingIntent pendingIntent;
Intent newInt;
newInt = new Intent(Intent.ACTION_SENDTO);
newInt.setData( Uri.parse( "sms:052373"));
newInt.putExtra("sms_body", "The SMS text");
pendingIntent = PendingIntent.getActivity(this, 0, newInt, 0);

现在的问题是如何开始附加pendingIntentpendingIntent?

我试过这个例如:

NewIntent.putExtra("pendingIntent",pendingIntent);
startService(NewIntent);

但它不起作用。

在服务中:

PendingIntent pendingIntent = (PendingIntent) intent.getParcelableExtra("pendingIntent");
pendingIntent.send();
4

1 回答 1

15

我成功了!

看到这个:

PendingIntent pendingIntent;
Intent ownIntent;

ownIntent = new Intent(Intent.ACTION_SENDTO);
ownIntent.setData(Uri.parse("sms:0523737233"));
ownIntent.putExtra("sms_body", "The SMS text");
Log.e("abc", "7");
pendingIntent = PendingIntent.getActivity(this, 0, ownIntent, Intent.FLAG_ACTIVITY_NEW_TASK);
Log.e("abc", "9");

ownIntent.putExtra("pendingIntent", pendingIntent);
ownIntent.putExtra("uriIntent", ownIntent.toUri(0));
startService(ownIntent);

并在服务中:

PendingIntent pendingIntent = (PendingIntent) intent.getParcelableExtra("pendingIntent");
pendingIntent.send();
于 2012-12-24T22:07:55.360 回答