I "upgraded" to XCode 9 today, hoping that it would support the new ISO Appendix K safe string functions (it doesn't). It has always been difficult to get XCode to update a Mac application's Help Book. In the past I have been able to do it by following these instructions:
Delete any other versions of the app and empty the trash.
Update the Help.plist
Create a new Help.helpindex file using the Help Indexer
Remove the help folder from project.
Delete the system’s cached help folder using the terminal command: rm -rf ~/Library/Caches/com.apple.help*
Sometimes it helps to restart your machine now
Sometimes it helps to execute the termanal command rm -rf ~/Library/Caches/com.apple.help* again
Clean and rebuild the project without the Help folder
Add the new Help folder, clean and rebuild
Check to be sure that the new help book is added
Now this doesn't work. When I run my project with the new Help Book the Help Book window says:
The selected topic is currently unavailable.
The topic you were trying to view could not be found.
XCode logs:
2017-09-20 13:45:49.466114-0600 app[2349:187674] Entering AHRegisterHelpBookWithURL
2017-09-20 13:45:49.466228-0600 app[2349:187674] Entering AHRegisterHelpBookWithURL: 0
Can anyone tell me how to get XCode 9 to do this?
I got it to work. Important:
1. The help Book authoring guide refers to the Help Book folder as a bundle and shows it in the app bundle hierarchy as a .help bundle DON'T make the Help Book folder a bundle with a .help extension.
2. When you add the Help Folder to the project, be sure to check the radio button in the add files dialog as " Create Folder references..."
3. In XCode 9 dragging the help folder into the project won't automatically include it as a member of the target. Highlight the help folder in the project navigator. in the right pane check the Target Membership check box.
4. Check the strings in the help-Info.plist very carefully. The help-Info.plist strings I had in older versions of the project worked before but not now.
5. In my project I won't have app help unless I include a correct help-Info.plist.