2014-08-28 72 views
0

当智能手机应用程序显示穿戴式设备通知时,我需要传递其他数据,然后才能将该通知传回与PendingIntent关联的智能手机应用程序类别。我曾尝试将附加数据从可穿戴设备传回到活动

Intent viewIntent = new Intent(context, ProcessReplyActivity.class); 
viewIntent.putExtra("test", "test"); 
PendingIntent actionPendingIntent = PendingIntent.getActivity(context, 0, viewIntent, 0); 

但在智能手机应用程序创建ProcessReplyActivity时 - (后我选择可穿戴的响应) - getIntent().getStringExtra("test")

这是正确的方式吗?

谢谢。

回答

0

你的最后一行的最后一个说法是错误的(在2线舒适的阅读呈现):

PendingIntent actionPendingIntent = 
    PendingIntent.getActivity(context, 0, viewIntent, 0); 

你可能重新使用旧的已经创造了这样的意图,而不test额外和系统而不是使用新的(附加费用)。您应该使用PendingIntent.FLAG_UPDATE_CURRENT让系统知道你想用这个悬而未决的意图的最新可能的版本:

PendingIntent actionPendingIntent = 
    PendingIntent.getActivity(context, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT); 

同样的标志用于官方教程如何实现可穿戴的通知,语音输入:
https://developer.android.com/training/wearables/notifications/voice-input.html#AddAction

// Create an intent for the reply action 
Intent replyIntent = new Intent(this, ReplyActivity.class); 
PendingIntent replyPendingIntent = 
    PendingIntent.getActivity(this, 0, replyIntent, 
      PendingIntent.FLAG_UPDATE_CURRENT); 
+0

感谢您的详细解释。 – user1379811 2014-08-29 14:10:00

+0

没问题:)为了提高质量答案,你也可以考虑upvote不仅是正确的答案,但也有其他方式有帮助 - 就像有问题的原因等附加说明。 – 2014-08-29 14:18:59

相关问题