Подтвердить что ты не робот

Отключить андроид в ожидании подтверждения действия

В настоящее время я работаю над приложением с уведомлением, которое отображается на устройстве для изнашивания. Уведомление содержит действие, связанное с карточкой уведомления (.setContentAction(0)).

enter image description here

Все работает нормально, за исключением того, что он показывает сообщение подтверждения каждый раз, когда кто-то нажимает на карту.

enter image description here

Так как карта обновляется, как только кто-то нажимает на нее, нет необходимости показывать подтверждение.

Я уже проверяю официальную документацию (https://developer.android.com/training/wearables/ui/confirm.html#show-confirmation), если есть способ остановить подтверждение, к сожалению, я не нашел решение до сих пор.

Изменить 09.07.2015

NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
                                    .setGroup("GROUP")
                                    .setGroupSummary(false)
                                    .setAutoCancel(false)
                                    .setPriority(Notification.PRIORITY_HIGH)
                                    .setSmallIcon(R.drawable.ic_timer_white_48dp);

ArrayList<NotificationCompat.Action> actions = new ArrayList<>();
NotificationCompat.Action control = new NotificationCompat.Action.Builder(icon, null, pendingTimeIntent).build();

actions.add(control);

builder.extend(new NotificationCompat.WearableExtender().addActions(actions).setContentAction(0).setBackground(background));

NotificationManagerCompat notificationManager =
            NotificationManagerCompat.from(context);
notificationManager.notify(Constants.NOTIFICATION_ID_WEAR, builder.build());
4b9b3361

Ответ 1

вы можете попробовать изменить свой конструктор следующим образом:

NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
                                    .setGroup("GROUP")
                                    .setGroupSummary(false)
                                    .setAutoCancel(false)
                                    .setPriority(Notification.PRIORITY_HIGH)
                                    .setShowWhen(true)                                                                                   
.setSmallIcon(R.drawable.ic_timer_white_48dp);

Обратите внимание на строку:

.setShowWhen(true);

И вы можете изменить флаг намерения на false:

Intent intent = new Intent(this, ConfirmationActivity.class);
intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE,
                ConfirmationActivity.SUCCESS_ANIMATION);
intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE,
                getString(R.string.msg_sent));
intent.putExtra(ConfirmationActivity.EXTRA_SHOW_WHEN, false);
startActivity(intent);

Я не знаю, работает ли он правильно, но я надеюсь, что это даст вам ключ.