Wie richte ich die Menüoption "Hilfe" für eine iPad-App ein, die mit Mac Catalyst auf den Mac portiert wird?

9

Standardmäßig erstellt Mac Catalyst ein Menü mit dem Titel "Hilfe", das Hilfe für die Anwendung enthalten soll. Ich habe jedoch keine Dokumentation zur Implementierung der Hilfe gefunden. Für Standard-Mac-Apps können Sie ein Hilfebuch verwenden. Es wird jedoch nicht erwähnt, wie ein Hilfebuch mit Mac Catalyst verwendet wird. Ich habe versucht, den HelpBookDirectoryName zu info.plist hinzuzufügen, aber dies hat nicht funktioniert. Gibt es eine Möglichkeit, Hilfebücher mit Mac Catalyst zum Laufen zu bringen?

Ken Roe
quelle

Antworten:

7

Wir verwenden ein webbasiertes Hilfesystem für unsere iOS-App, und das Hinzufügen zu den entsprechenden UIViewControllern scheint zu funktionieren, um den Menübefehl Hilfe für unsere Catalyst-Version zu verbinden:

    // 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
quelle
1
Gibt es einen anderen Weg? Apple hat plötzlich beschlossen, meine App abzulehnen, bis ich das Hilfemenü implementiere.
Sabiland
@sabiland Siehe meine Antwort unten. Ich hatte bis jetzt die gleichen Probleme mit der Ablehnung von Apps.
Paul Martin
Tolles @PaulMartin, ich werde es versuchen.
Sabiland
2
Zu Ihrer AppDelegateInformation können Sie dies in die Klasse für diejenigen einfügen, die SwiftUI verwenden.
Sternenstaub4891
4

OK ... Ich habe es geschafft, dies mithilfe einer Drittanbieter-App (Help Crafter) zum Erstellen der MyAppName.helpDatei / des Ordners zum Laufen zu bringen, aber Sie können dies manuell tun.

Nachdem Sie die MyAppName.helpDatei erstellt haben, müssen Sie sie in den Ordner Ressourcen in Ihrem Projekt kopieren . Dazu habe ich zuerst die Datei in den Ordner "Ressourcen" im Finder kopiert und diese Datei dann in den Ordner "Ressourcen" in Xcode gezogen.

Der wichtigste Schritt: Wählen Sie "Ordnerreferenzen erstellen", wenn Sie sie in Ihr Projekt ziehen.

Ich hatte zuvor "Gruppen erstellen" ausgewählt und es hat nie funktioniert.

Dieser Link enthält auch einige nützliche Informationen, insbesondere wenn Sie die Datei MyAppName.help manuell erstellen möchten

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

Kurz gesagt, es wird eine .plistDatei in der MyAppName.helpDatei / im Ordner enthalten sein, aber Sie müssen Ihrer Projektdatei auch zwei Schlüssel hinzufügen .plist:

  • Help Book directory name-> der Name Ihrer .helpDatei (technisch gesehen ein Verzeichnis mit einer .helpErweiterung)
  • Help Book identifier-> für mich war es maccatalyst.com.nitramluap.MyAppName.helpaber es muss die gleiche Kennung in der MyAppName.help .plistunter dem Schlüssel seinBundle Identifier
Paul Martin
quelle