Dispositivos Móveis: Etapas de ação

Last Updated dezembro 10, 2025

Breve Visão Geral

As Etapas de Ação são um tipo de etapa muito útil para casos de uso de automação. A capacidade de agir em nome dos usuários finais melhora a produtividade e o tempo de retorno do valor para os usuários do aplicativo. Anteriormente, o WalkMe Mobile oferecia suporte a etapas de balão e banner, além de etapas de toque automático. O primeiro tipo de Etapa de Ação adicionado é "Rolagem" e, no futuro, mais tipos de ação serão adicionados.

Casos de uso

  • Rolagem automática para um "tipo" de elemento específico

Etapas para adicionar Etapa de Ação

  1. No Console Móvel, crie ou modifique um SWT existente passando o mouse sobre o + e clicando em "Etapa de ação".
  2. Selecione "Tipo", "Subtipo" e "Valor"

Tipo Tipo de Subtipo Valor
Rolar Callback Tipo de elemento (por exemplo, UILabel)

Como ativar as Etapas de Ação

Abaixo está uma descrição de todas as etapas necessárias para implementar os callbacks de etapa de ação.

Para poder se cadastrar nos callbacks da campanha, primeiro implemente este protocolo:

  • iOS
    /**
    * Interface definition for a callback to be invoked in Campaign actions.
    */
    @protocol WMCampaignInfoDelegate <NSObject>
    /**
    * Called after campaign was dismissed.
    *
    * @param campaignInfo The dismissed campaign info.
    */
    @optional
    - (void)campaignDidDismiss:(WMCampaignInfo *)campaignInfo;
    /**
    * Called right before the campaign is about to be shown (will not be called on Power Mode preview)
    *
    * @param campaignInfo The shown campaign info.
    */
    @optional
    - (void)campaignWillShow:(WMCampaignInfo *)campaignInfo;
    /**
    * Return a value for SWT Action step of type "Callback"
    *
    * @param type the action type (ex. scroll).
    * @param campaign The shown campaign info.
    * @param args array of values from the Value field on the console (comma separated values).
    */
    @optional
    - (void)campaign:(WMCampaignInfo *)campaign didPerformAction:(NSString *)actionType withArgs:(NSArray<NSString *> *)args andCompletion:(void (^)(__nullable id result))completion;
    @end
  • Android
    public interface WMCampaignInfoListener {
    /**
    * Called right before the campaign is about to be shown (will not be called on Power Mode preview)
    *
    * @param campaignInfo The shown campaign info.
    */
    void onCampaignPresented(WMCampaignInfo campaignInfo);
    /**
    * Called after campaign was dismissed.
    *
    * @param campaignInfo The dismissed campaign info.
    */
    void onCampaignDismissed(WMCampaignInfo campaignInfo);
    /**
    * Called on action step
    *
    * @param campaignInfo The campaign info.
    * @param actionType The action type.
    * @param args String array of arguments,
    * @param completionStepListener The listener to receive the result.
    */
    void onCampaignAction(WMCampaignInfo campaignInfo, String actionType, String[] args, WMCampaignActionListener completionStepListener);
    }

Depois de implementar o protocolo, registre-se nos eventos de callback da campanha:

  • iOS
    /**
    * Register a delegate to campaign events
    *
    *@param delegate The delegate
    *
    */
    + (void)setCampaignInfoDelegate:(id<WMCampaignInfoDelegate>)delegate;
  • Android
    /**
    * Register a listener to campaign events
    *
    *@param campaignInfoListener The listener
    *
    */
    public static void setCampaignInfoListener(WMCampaignInfoListener campaignInfoListener)

Por fim, implemente o método de ação da campanha para retornar o valor desejado para a ação:

  • iOS
    - (void)campaign:(WMCampaignInfo *)campaign didPerformAction:(NSString *)actionType withArgs:(NSArray<NSString *> *)args andCompletion:(void (^)(id _Nullable))completion {
    if (args.firstObject) {
    NSLog(@"Value for action type: %@ with args: %@", type, args.firstObject); // Value for action type: scroll with args: ProductCardTypeClass
    }
    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:4 inSection:1];
    if (completion) {
    completion(indexPath);
    }
  • Android
    @Override
    public void onCampaignAction(WMCampaignInfo campaignInfo, String actionType, String[] args, ABBI.WMCampaignActionListener completionStepListener) {
    if (args != null && args.length > 0) {
    Integer index = null;
    // Calculate the index based on the provided args
    index = myCardIndexCalculator();
    if (completionStepListener != null) {
    completionStepListener.onActionCompleted(index);
    }
    }
    else {
    if (completionStepListener != null) {
    completionStepListener.onActionCompleted(null);
    }
    }
    }

Requisitos/Limitações

  • iOS SDK versão 2.9.7 e Android SDK versão 2.10.9
  • A etapa capturada regular deve ocorrer imediatamente após a etapa de ação "scroll". Isso fornece o contexto da ação de rolagem para rolar até o contêiner apropriado onde o elemento existe.

Was this article helpful?

Thanks for your feedback!

Faça parte de algo maior.

Interaja com colegas, tire dúvidas e compartilhe ideias.

Explore nossa comunidade
×