failNudgePresentation method

void failNudgePresentation(
  1. CEPTriggerPayload payload,
  2. DropReason reason,
  3. String detail
)

A nudge DigiaHost could not present (no navigator, or the present threw): nothing reached the screen, so it leaves the surface and settles as a drop now rather than blocking every later campaign (SR61).

Implementation

void failNudgePresentation(
  CEPTriggerPayload payload,
  DropReason reason,
  String detail,
) {
  _log.e('Dropped — $detail', campaign: payload.campaignKey);
  clearPendingNudgeDismiss(payload.cepCampaignId);
  if (identical(_controller.activePayload, payload)) _controller.dismiss();
  _coordinator
      .ownerOf(payload)
      ?.settle(PresentationDropped(reason: reason, detail: detail));
  _liveTestContexts[payload.cepCampaignId]?.reportFailed(reason, detail);
}