2

他のアプリケーションからの通知イベントをリッスンする単純なアプリケーションを作成しました。StatusBarNotification オブジェクトを受け取り、そこから WearableExtender を取得しました。次に、エクステンダーが持っていた remoteInputs を取得しました。

次に、このコードを使用して、remoteinput に独自のテキストを入力し、pendingIntent を送信しました。

RemoteInput[] remoteInputs = new RemoteInput[notificationWear.remoteInputs.size()]; 
 Intent localIntent = new Intent();
 localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 Bundle localBundle = notificationWear.bundle;
  int i = 0;
 for(RemoteInput remoteIn : notificationWear.remoteInputs){ getDetailsOfNotification(remoteIn);
  remoteInputs[i] = remoteIn;
 localBundle.putCharSequence(remoteInputs[i].getResultKey(), "Our answer"); //This work, apart from Hangouts as probably they need additional parameter (notification_tag?)
 i++;
 }
 RemoteInput.addResultsToIntent(remoteInputs, localIntent, localBundle);
 try {
 notificationWear.pendingIntent.send(MainActivity.this, 0, localIntent);
 } catch (PendingIntent.CanceledException e) 
 { 
 Log.e(TAG, "replyToLastNotification error: " + e.getLocalizedMessage());
 }

ただし、ソースはこのコードが機能するはずだと主張しています。特定のアプリケーションと特定の会話しか開くことができませんが、返信を送信することはできません。Facebook、WhatsApp、その他のアプリで試してみました。他のアプリケーションについても同様です。

4

0 に答える 0