Como configuro a opção de menu "Ajuda" para um aplicativo de iPad que está sendo portado para o Mac usando o Mac Catalyst?

9

Por padrão, o Mac Catalyst cria um menu intitulado "Ajuda" que deve incluir ajuda para o aplicativo. No entanto, não encontrei nenhuma documentação sobre como implementar a Ajuda. Para aplicativos Mac padrão, você pode usar um livro de Ajuda. No entanto, não há menção sobre como usar um livro de ajuda com o Mac Catalyst. Tentei adicionar o HelpBookDirectoryName ao info.plist, mas isso não funcionou. Existe uma maneira de fazer com que os livros de ajuda funcionem com o Mac Catalyst?

Ken Roe
fonte

Respostas:

7

Usamos um sistema de ajuda baseado na Web para nosso aplicativo iOS e adicioná-lo aos UIViewControllers apropriados parece funcionar para conectar o comando do menu Ajuda para nossa versão do Catalyst:

    // Show some help.
@IBAction func showHelp(_ sender: Any) {
    UIApplication.shared.open(URL(string: "http://www.ourapp.com/faq")!)
}

// Return whether action can be performed.
override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {

    if action == #selector(self.showHelp(_:)) {
        return true
    } else {
        return super.canPerformAction(action, withSender: sender)
    }
}
LenK
fonte
11
Existe alguma outra maneira? De repente, a Apple decidiu negar meu aplicativo até que eu implemente o menu Ajuda.
sabiland 24/10/19
@sabiland Veja minha resposta abaixo. Eu estava tendo os mesmos problemas com a rejeição de aplicativos até agora.
Paul Martin
Ótimo @PaulMartin, vou tentar.
sabiland
2
Para sua informação, você pode colocar isso na AppDelegateclasse para aqueles que usam o SwiftUI.
stardust4891
4

OK ... Consegui fazer isso funcionar usando um aplicativo de terceiros (Help Crafter) para criar o MyAppName.helparquivo / pasta, mas você poderia fazê-lo manualmente.

Depois de criar o MyAppName.helparquivo, você precisa copiá-lo para a pasta Recursos no seu projeto. Fiz isso primeiro copiando o arquivo para a pasta Resources no Finder e arrastando esse arquivo para a pasta Resources no Xcode.

A etapa mais importante: selecione 'Criar referências de pasta' ao arrastá-lo para o seu projeto.

Eu já havia selecionado 'Criar grupos' e nunca funcionou.

Este link também contém algumas informações úteis, principalmente se você deseja criar o arquivo MyAppName.help manualmente

http://swiftrien.blogspot.com/2015/06/adding-apple-help-to-os-x-application.html

Em resumo, haverá um .plistarquivo contido dentro do MyAppName.helparquivo / pasta, mas você também precisará adicionar duas chaves ao .plistarquivo de projetos :

  • Help Book directory name-> o nome do seu .helparquivo (que é tecnicamente um diretório com uma .helpextensão)
  • Help Book identifier-> para mim foi, maccatalyst.com.nitramluap.MyAppName.helpmas deve ser o mesmo identificador no campo MyAppName.help .plistsob a chaveBundle Identifier
Paul Martin
fonte