Todos os produtos
Search
Central de documentação

Mobile Platform as a Service:Configure the launch screen

Última atualização: Jun 28, 2026

A tela de inicialização (também chamada de splash screen) aparece após o início do aplicativo e o fechamento da LaunchScreen do sistema, e desaparece quando a página inicial é carregada. Este tópico descreve como configurar o anúncio da tela de inicialização no cliente iOS para buscar e exibir conteúdo publicitário do console mPaaS.

Após configurar a tela de inicialização no cliente, defina as informações do slot de anúncio e o conteúdo no console. Consulte Crie um slot de anúncio e Crie uma campanha. O aplicativo busca e exibe os dados de veiculação de anúncios com base nessa configuração, o que permite a entrega dinâmica de publicidade.

Nota

O download dos dados de veiculação de anúncios ocorre de forma assíncrona. Na primeira execução após a configuração, o aplicativo apenas baixa e armazena a imagem do anúncio em cache localmente, sem exibi-la. A imagem em cache aparecerá na próxima inicialização.

A tela de inicialização baseia-se no framework mPaaS. Para obter detalhes, consulte Visão geral do framework mPaaS. O ciclo de vida da tela de inicialização funciona da seguinte maneira:

  1. O framework inicia e cria um bootloader para gerenciar a janela principal do aplicativo.

  2. Quando a tela de inicialização aparece, o framework alterna automaticamente para a janela dessa tela.

  3. Quando o bootloader conclui o carregamento e o microaplicativo Launcher é exibido, a tela de inicialização fecha e o framework retorna à janela principal.

Pré-requisitos

Antes de começar, verifique se você:

Adicionar código da tela de inicialização

No arquivo DTFrameworkInterface+MPCDPDemo_plugin.m (categoria de framework gerada pelo mPaaS), adicione as seguintes configurações:

  1. Declare uma variável estática para armazenar o objeto da janela da tela de inicialização.

    static UIWindow *splashScreenWindow;
  2. No método application:handleDidFinishLaunchingWithOptions:, implemente a lógica do anúncio da tela de inicialização e abra a tela.

    - (DTFrameworkCallbackResult)application:(UIApplication *)application handleDidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // Check if the launch screen exists
        BOOL showSplashWindow = YES;
        showSplashWindow = splashScreenExist(showSplashWindow);
        if (showSplashWindow) {
            __weak typeof(self) weakSelf = self;
            // Open the launch screen
            splashScreenWindow = APSplashScreenStart(^{
                // Callback for when the launch screen closes
                [weakSelf splashScreenDidDismiss];
            });
        }
    
        return DTFrameworkCallbackResultContinue;
    }
  3. Implemente a lógica de fechamento: restaure a janela principal como janela chave, libere a janela da tela de inicialização e, opcionalmente, publique uma notificação.

    - (void)splashScreenDidDismiss {
        // Revert the application's main window to the key window
        [DTContextGet().window makeKeyAndVisible];
        [self performSelector:@selector(doDismiss) withObject:nil afterDelay:0.0];
    }
    
    - (void)doDismiss {
        // Release the launch screen object
        splashScreenWindow.rootViewController = nil;
        splashScreenWindow = nil;
        [self notifySplashScreenDismiss];
    }
    
    - (void)notifySplashScreenDismiss {
        // Post a notification when the splash screen closes. Handle other logic here (optional).
        [[NSNotificationCenter defaultCenter] postNotificationName:@"kSplashScreenDidDismiss" object:nil];
    }
  4. Após o término do carregamento do framework, sinalize que a tela de inicialização está prestes a fechar. Faça essa chamada no método application:afterDidFinishLaunchingWithOptions:.

    - (void)application:(UIApplication *)application afterDidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        APWillKillSplashScreen();
        // ...
    }
  5. Quando a ViewController da página inicial aparecer, publique uma notificação para fechar a tela de inicialização. Geralmente, trata-se da rootViewController do microaplicativo Launcher. Se for uma TabBarController, use a ViewController da primeira aba.

    @implementation HomeViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
    }
    
    - (void)viewDidAppear:(BOOL)animated {
        [super viewDidAppear:animated];
        // Notify that the Launcher has been displayed
        [[NSNotificationCenter defaultCenter] postNotificationName:@"kNotificationLauncherDidAppear" object:nil];
    }
    @end

Tópicos relacionados

Para obter detalhes sobre a API da tela de inicialização, consulte Referência da API.