Comment configurer l'option de menu «Aide» pour une application iPad en cours de portage sur le Mac à l'aide de Mac Catalyst?

9

Par défaut, Mac Catalyst crée un menu intitulé "Aide" qui est censé inclure l'aide pour l'application. Cependant, je n'ai trouvé aucune documentation sur la façon d'implémenter l'aide. Pour les applications Mac standard, vous pouvez utiliser un livre d'aide. Cependant, il n'y a aucune mention sur la façon d'utiliser un livre d'aide avec Mac Catalyst. J'ai tenté d'ajouter le HelpBookDirectoryName à info.plist mais cela n'a pas fonctionné. Existe-t-il un moyen de faire fonctionner les livres d'aide avec Mac Catalyst?

Ken Roe
la source

Réponses:

7

Nous utilisons un système d'aide basé sur le Web pour notre application iOS et l'ajouter aux UIViewControllers appropriés semble fonctionner pour connecter la commande du menu Aide pour notre version 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
la source
1
Est-ce qu'il y a un autre moyen? Apple a soudainement décidé de refuser mon application jusqu'à ce que j'implémente le menu Aide.
sabiland
@sabiland Voir ma réponse ci-dessous. J'avais les mêmes problèmes avec le rejet de l'application jusqu'à présent.
Paul Martin
Super @PaulMartin, je vais l'essayer.
sabiland
2
Pour info, vous pouvez mettre cela dans la AppDelegateclasse pour ceux qui utilisent SwiftUI.
stardust4891
4

OK ... J'ai réussi à faire fonctionner cela en utilisant une application tierce (Help Crafter) pour créer le MyAppName.helpfichier / dossier, mais vous pouvez le faire manuellement.

Une fois que vous avez créé le MyAppName.helpfichier, vous devez le copier dans le dossier Resources de votre projet. J'ai d'abord fait cela en copiant le fichier dans le dossier Resources du Finder, puis en faisant glisser ce fichier dans le dossier Resources de Xcode.

L'étape la plus importante: sélectionnez «Créer des références de dossier» lorsque vous le faites glisser dans votre projet.

J'avais précédemment sélectionné «Créer des groupes» et cela n'a jamais fonctionné.

Ce lien contient également des informations utiles, en particulier si vous allez créer le fichier MyAppName.help manuellement

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

En bref, il y aura un .plistfichier contenu dans le MyAppName.helpfichier / dossier, mais vous devrez également ajouter deux clés à votre .plistfichier de projets :

  • Help Book directory name-> le nom de votre .helpfichier (qui est techniquement un répertoire avec une .helpextension)
  • Help Book identifier-> pour moi ça l'était maccatalyst.com.nitramluap.MyAppName.helpmais ça doit être le même identifiant MyAppName.help .plistsous la cléBundle Identifier
Paul Martin
la source