【问题标题】:Debugging Help Book ("The selected topic is currently unavailable")调试帮助手册(“所选主题​​当前不可用”)
【发布时间】:2015-05-09 16:16:31
【问题描述】:

是的 - 所以我创建了一本帮助手册,做了 all the right things,仔细检查了我的 plistindex.html 文件,我得到的只是臭名昭著的文件

所选主题当前不可用。

尝试打开帮助手册时,控制台中的唯一条目是纯文本

3/8/15 1:23:42.467 PM HelpViewer[35015]: Couldn't find book with this ID: (null)

没有太大帮助。

从这里去哪里?
Apple 帮助是否有任何调试技术
日志记录 可以打开?有什么...?

【问题讨论】:

  • 你是怎么看到控制台的?我在 Apple 帮助查看器中没有看到任何控制台。
  • 您的意思是在 Xcode 的控制台中吗? @亚视
  • @jmoukel /Applications/Utilities/Console.app

标签: objective-c xcode cocoa appkit apple-help


【解决方案1】:

只是在同一个问题上挣扎了几个小时。

ID: (null) 表示您缺少 CFBundleNameHPDBookTitle 键,或者 CFBundleName 不正确。您应该可以在 HelpViewer 日志中正常看到您的包标识符。

在我确定我的帮助手册 Info.plist 文件至少配置了以下 六个键 后,它就可以工作了:

...
<key>CFBundleIdentifier</key>
<string>com.company.project.help</string>

<key>CFBundleName</key>
<string>ProjectHelp</string>

<key>HPDBookAccessPath</key>
<string>index.html</string>

<key>HPDBookIconPath</key>
<string>icon.png</string>

<key>HPDBookTitle</key>
<string>Project Help</string>

<key>HPDBookType</key>
<string>3</string>
...

主项目Info.plist文件包含这些记录:

...
<key>CFBundleHelpBookFolder</key>
<string>ProjectHelp.help</string>

<key>CFBundleHelpBookName</key>
<string>com.company.project.help</string>
...

这假设您有一个ProjectHelp.help 目标,该目标已复制到主项目资源文件夹中。

然后构建发布方案并将您的项目 .app 文件复制到 Applications 文件夹。在那之后,我的帮助书开始工作了。是的,在将签名的 .app 安装到 Applications 文件夹后。

如果HelpViewer 程序缓存仍然不起作用,您也可以尝试清除它。 HelpViewer 重置描述here

【讨论】:

  • 感谢您的详尽解释 - 不太记得如何让它最终工作。由于 Help Viewer 兑现,即使在一切设置正确后,它也不会立即起作用,这一事实也无济于事。我已经接受了您的回答,因为它包含了我的工作帮助手册中现在存在的所有键。不过,它可能还有更多内容。在没有任何调试支持的情况下最初设置这些是一个巨大的痛苦......
猜你喜欢
  • 2011-10-06
  • 2013-02-01
  • 2022-01-22
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-26
相关资源
最近更新 更多