Criando interface do usuário embutida para atalhos da Siri usando intenções personalizadas

  • Parte 1 – Criando atalhos da Siri usando o NSUserActivity no iOS 12
  • Parte 2 – Introdução aos atalhos da Siri no iOS 12 usando intenções

No último post, expliquei como começar a criar atalhos Siri usando o Intents. Fizemos um bom progresso, mas ainda tivemos que abrir nosso aplicativo para criar um novo pedido. Nesta postagem, explicarei como você pode criar uma interface do usuário personalizada que é exibida em linha, permitindo que você faça um pedido sem abrir o aplicativo.

[Se você está gostando das minhas postagens e quer saber mais sobre os atalhos da Siri, talvez esteja interessado no meu curso da Udemy “Dominar atalhos da Siri para iOS”]

Implementação

A primeira etapa para liberar o poder das intenções personalizadas é adicionar um novo destino como ” Extensão de intenções”. Vamos chamar esse destino de ” HotCoffeeIntents “. Isso é mostrado na captura de tela abaixo:

Siga as etapas e verifique se a caixa de seleção ” Incluir extensão da interface do usuário ” está marcada. Isso adicionará um novo destino que será responsável pela interface de usuário embutida do atalho.

O destino HotCoffeeIntents precisará saber sobre nossa classe OrderCoffeeIntent. Isso significa que você precisa adicionar o arquivo “ Intents.intentdefinition ” aos destinos HotCoffeeIntents e HotCoffeeIntentsUI, conforme mostrado abaixo:

Manipulação de intenções

Agora, é hora de lidar com nossas intenções. Isso será implementado no arquivo IntentHandler.swift, que faz parte do destino HotCoffeeIntents . Primeiro, verifique se o IntentHandler está em conformidade com o protocolo OrderCoffeeIntentHandling.

O protocolo OrderCoffeeIntentHandling é gerado automaticamente quando você adiciona o arquivo de definição de Intents

O protocolo OrderCoffeeIntentHandling requer a implementação da função de manipulação. A função de manipulação é acionada quando o pedido é feito. Além da função de manipulação, também forneceremos a implementação da função de confirmação, que é acionada antes que o pedido seja feito. Isso é para confirmar que estamos prontos para lidar com um pedido. A implementação é mostrada abaixo:

Ótimo! Na próxima seção, aprenderemos como personalizar a interface de usuário em linha do Siri Shortcut.

Criando interface de usuário embutida

O projeto HotCoffeeIntentsUI é responsável pela interface embutida do atalho. Abra MainInterface.storyboard e adicione dois UIViews.

Você pode soltar as novas UIViews na janela de estrutura de tópicos do documento. Achamos essa abordagem muito mais fácil.

Nossa primeira visualização será responsável por mostrar a fatura ao usuário. A segunda visualização será responsável por mostrar uma mensagem de confirmação sobre o pedido.

Crie sua visualização da maneira que desejar. Aqui está a captura de tela da nossa fatura e confirme as visualizações.

Cada visualização é controlada por uma classe personalizada. Vá em frente e adicione dois novos arquivos Swift e nomeie-os como InvoiceView.swift e ConfirmView.swift, respectivamente.

Em seguida, pule para o IntentViewController.swift, onde injetaremos a visualização correta na visualização raiz.

Confira a implementação da função configureView, como mostrado abaixo:

É isso aí! Vamos executar nosso aplicativo e fazer um pedido para um café quente 🙂

Se você gostou deste post e quer saber mais sobre os atalhos da Siri, consulte o meu curso Udemy de mais de 3 horas sobre ” Dominando os atalhos da Siri no iOS “. O curso aborda muito mais detalhadamente como criar atalhos Siri usando o NSUserActivity, Intents, Respostas personalizadas, Interface personalizada do usuário e muito mais.

Dominando os atalhos da Siri no iOS | Udemy
Simplifique o que você faz frequentemente com os atalhos www.udemy.com