¿Cómo configuro la opción de menú "Ayuda" para una aplicación de iPad que se transfiere a Mac usando Mac Catalyst?

9

Por defecto, Mac Catalyst crea un menú titulado "Ayuda" que se supone que incluye ayuda para la aplicación. Sin embargo, no encontré documentación sobre cómo implementar la Ayuda. Para las aplicaciones estándar de Mac, puede usar un libro de ayuda. Sin embargo, no se menciona cómo usar un libro de ayuda con Mac Catalyst. Intenté agregar el HelpBookDirectoryName a info.plist pero esto no funcionó. ¿Hay alguna manera de hacer que los libros de ayuda funcionen con Mac Catalyst?

Ken Roe
fuente

Respuestas:

7

Utilizamos un sistema de ayuda basado en la web para nuestra aplicación iOS y agregar esto a los UIViewControllers apropiados parece funcionar para conectar el comando del menú Ayuda para nuestra versión de 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
fuente
1
¿Hay alguna otra manera? Apple de repente decidió negar mi aplicación hasta que implemente el menú Ayuda.
sabiland
@sabiland Vea mi respuesta a continuación. Estaba teniendo los mismos problemas con el rechazo de la aplicación hasta ahora.
Paul Martin el
Genial @PaulMartin lo intentaré.
sabiland
2
Para su información, puede poner esto en la AppDelegateclase para aquellos que usan SwiftUI.
stardust4891
4

OK ... logré hacer que esto funcione usando una aplicación de terceros (Help Crafter) para crear el MyAppName.helparchivo / carpeta, pero puedes hacerlo manualmente.

Una vez que haya creado el MyAppName.helparchivo, debe copiarlo en la carpeta Recursos de su proyecto. Primero hice esto copiando el archivo a la carpeta Recursos en Finder, y luego arrastrando ese archivo a la carpeta Recursos en Xcode.

El paso más importante: seleccione 'Crear referencias de carpeta' cuando lo arrastre a su proyecto.

Anteriormente había seleccionado 'Crear grupos' y nunca funcionó.

Este enlace también contiene información útil, especialmente si va a crear el archivo MyAppName.help manualmente

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

En resumen, habrá un .plistarchivo contenido dentro del MyAppName.helparchivo / carpeta, pero también necesitará agregar dos claves al .plistarchivo de sus proyectos :

  • Help Book directory name-> el nombre de su .helparchivo (que técnicamente es un directorio con una .helpextensión)
  • Help Book identifier-> para mí fue maccatalyst.com.nitramluap.MyAppName.helppero tiene que ser el mismo identificador en MyAppName.help .plistla tecla debajoBundle Identifier
Paul Martin
fuente