2014-08-28 62 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

相關問題