Todos os produtos
Search
Central de documentação

Mobile Platform as a Service:Use the SDK

Última atualização: Jun 28, 2026

Após adicionar o kit de desenvolvimento de software (SDK), siga as etapas abaixo para integrar a liberação em tempo real ao seu cliente iOS:

  1. Verificar novas versões: Chame o método de interface do SDK para verificar se há novas versões.

  2. Configure uma lista de permissões de liberação gradual: Defina opções como prompts de atualização e liberações graduais.

    Importante

    Se você remover a dependência UTDID, as liberações graduais por janela de tempo não funcionarão.

  3. Publicar online: Gere um arquivo IPA no console mPaaS e publique a nova versão.

Procedimento

Verificar novas versões

O SDK de verificação de atualização fornece interfaces para checar atualizações do aplicativo. Quando uma nova versão é detectada, o SDK comporta-se da seguinte forma, conforme os requisitos da sua UI:

  • Se você usar o pop-up padrão do mPaaS, o SDK exibirá automaticamente um prompt de atualização.

  • Caso utilize um pop-up personalizado do mPaaS, o SDK chamará seus métodos delegate para renderizar uma imagem personalizada, toast ou barra de progresso.

  • Em uma UI totalmente personalizada, o SDK retornará as informações de atualização como um dicionário para tratamento manual.

O arquivo de cabeçalho do método está localizado em AliUpgradeCheckService.framework > Headers > MPCheckUpgradeInterface.h.

typedef NS_ENUM(NSUInteger, AliUpdateType) {
    AliUpgradeNewVersion = 201,            /*The current version is the latest.*/
    AliUpgradeOneTime,                     /*A new version is available on the client. Remind once.*/
    AliUpgradeForceUpdate,                 /*A new version is available on the client. Force upgrade (deprecated).*/
    AliUpgradeEveryTime,                   /*A new version is available on the client. Remind multiple times.*/
    AliUpgradeRejectLogin,                 /*Restrict logon (deprecated).*/
    AliUpgradeForceUpdateWithLogin         /*A new version is available on the client. Force upgrade.*/
};

/**
 Success callback for upgrade check when using a custom UI.

 @param upgradeInfos Upgrade information.
 @{upgradeType:202,
 downloadURL:@"itunes://downLoader.xxxcom/xxx",
 message:@"A new version is available. Please upgrade.",
 upgradeShortVersion:@"9.9.0",
 upgradeFullVersion:@"9.9.0.0000001"
 needClientNetType:@"4G,WIFI",
 userId:@"admin"
 }
 */
typedef void(^AliCheckUpgradeComplete)(NSDictionary *upgradeInfos);
typedef void(^AliCheckUpgradeFailure)(NSException *exception);

@interface MPCheckUpgradeInterface : NSObject

/**
 The time interval for a single reminder, in days. Default value: 3.
 */
@property(nonatomic, assign) NSTimeInterval defaultUpdateInterval;

/**
 The delegate for modifying the default pop-up UI.
 */
@property (nonatomic, weak) id<AliUpgradeViewDelegate> viewDelegate;

/**
 * Initializes the instance.
 */
+ (instancetype)sharedService;

/**
 Actively checks for updates. If an update is found, a pop-up window is automatically displayed using the default mPaaS UI.
 *
 */
- (void)checkNewVersion;

/**
 Actively checks for updates. A pop-up window is not automatically displayed. This is typically used for custom UIs, checking for updates, or displaying notification dots.

 @param complete Success callback. Returns a dictionary of upgrade information.
 @param failure  Failure callback.
 */
- (void)checkUpgradeWith:(AliCheckUpgradeComplete)complete
                 failure:(AliCheckUpgradeFailure)failure;
@end

Chame a interface apropriada após iniciar o aplicativo. Para evitar lentidão na inicialização, invoque a interface depois que a página inicial aparecer. Há três opções disponíveis:

  • Use o pop-up padrão do mPaaS para exibir o prompt de atualização:

      - (void)checkUpgradeDefault {
          [[MPCheckUpgradeInterface sharedService] checkNewVersion];
      }
  • Personalize a UI do pop-up padrão do mPaaS com uma imagem personalizada, toast de notificação de rede ou barra de progresso para solicitações de rede:

      - (void)checkUpgradeWithHeaderImage {
          MPCheckUpgradeInterface *upgradeInterface = [MPCheckUpgradeInterface sharedService];
          upgradeInterface.viewDelegate = self;
          [upgradeInterface checkNewVersion];
      }
    
      - (UIImage *)upgradeImageViewHeader{
          return APCommonUILoadImage(@"ilustration_ap_expection_alert");
      }
    
      - (void)showToastViewWith:(NSString *)message duration:(NSTimeInterval)timeInterval {
          [self showAlert:message];
      }
    
      - (void)showAlert:(NSString*)message {
          AUNoticeDialog* alertView = [[AUNoticeDialog alloc] initWithTitle:@"Information" message:message delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
          [alertView show];
      }
  • Adote uma UI totalmente personalizada para recuperar as informações de atualização e gerenciar a exibição manualmente:

      - (void)checkUpgradeWIthCustomUI {
          [[MPCheckUpgradeInterface sharedService] checkUpgradeWith:^(NSDictionary *upgradeInfos) {
              [self showAlert:[upgradeInfos JSONString]];
          } failure:^(NSException *exception) {
          }];
      }

Configure uma lista de permissões de liberação gradual

Para usar o recurso de lista de permissões de liberação gradual, o servidor precisa identificar cada cliente. Na categoria MPaaSInterface, configure o método userId para retornar um identificador exclusivo do aplicativo, como nome de usuário, número de telefone ou endereço de e-mail.

@implementation MPaaSInterface (Portal)

- (NSString *)userId
{
    return @"mPaaS";
}

@end

Para obter informações sobre como configurar uma lista de permissões no console mPaaS, consulte Real-time Release > Whitelist Management.

Publicar online

Gerar um arquivo IPA

  • Use o Xcode para gerar um pacote IPA:

  • Alternativamente, use o recurso de empacotamento do plugin mPaaS para gerar um pacote IPA. O pacote será salvo no diretório product do projeto atual. Configure os seguintes campos:

    • Bundle Identifier: Deve corresponder ao Bundle ID no arquivo de configuração em nuvem.

    • Bundle Version: Deve ser igual ao valor de Production Version no arquivo info.plist do projeto.

    • Provisioning Profile: Arquivo de configuração de assinatura. Deve coincidir com o Bundle ID; caso contrário, o empacotamento falhará.

    • Debug: Especifica se deve ser gerado um pacote de depuração.

    • App Store: Define se deve ser gerado um pacote de lançamento para a App Store.

Publicar uma nova versão

Use o recurso de gerenciamento de liberação para publicar uma nova versão. Para mais detalhes, consulte Release Management.

Modo de atualização

Ao criar uma tarefa de liberação no console mPaaS, selecione um modo de atualização que controle a frequência dos prompts aos usuários. Após o primeiro prompt, o SDK verifica se o período de resfriamento expirou antes de exibir o aviso novamente. Isso evita que os usuários recebam mais de uma notificação por período nas chamadas subsequentes de verificação de atualização.

  • Lembrete único: O cliente recebe o prompt apenas uma vez por período de resfriamento, mesmo que a interface de verificação de atualização seja chamada várias vezes.

    • Use este modo para incentivar atualizações sem interromper a experiência dos usuários.

    • O período de resfriamento padrão é de 3 dias. Para alterá-lo, defina a propriedade abaixo antes de chamar a interface de verificação de atualização:

        - (void)checkUpgradeDefault {
            [MPCheckUpgradeInterface sharedService].defaultUpdateInterval = 7;
            [[MPCheckUpgradeInterface sharedService] checkNewVersion];
        }
  • Múltiplos lembretes: Um pop-up aparece sempre que o cliente chama a interface de verificação de atualização. Use este modo quando uma nova versão já estiver disponível há algum tempo e você desejar notificar os usuários com maior frequência.

  • Lembrete forçado: Um pop-up é exibido toda vez que o cliente invoca a interface de verificação de atualização, sem botão de cancele. Os usuários não conseguem continuar usando o aplicativo sem atualizar. Use este modo para descontinuar versões antigas do cliente.

Links relacionados

Exemplos de código