“快速编程语言” iBook未更新


16

随着对Objective-C的厌倦,我最近一直在研究Swift开发。但是,我正在阅读的书(Apple的官方指南)不会更新到Mac上的最新版本。它在我的iPhone上可以正常更新,但是从六月开始,它仍然具有与最初在Mac上下载的版本相同的版本。有什么办法可以更新吗?

我尝试删除并重新下载该书,但“下载”菜单中仍然没有更新选项。我尝试在iBooks商店中查看-肯定有可用的新版本。当我让iBooks检查可用下载时,它表示我已经下载了所有更新和购买。有什么建议吗?


您是否有机会登录其他商店帐户?
samh,2014年

不,我一定是自己登录的。我检查了。
2014年

您确定Mac上有旧版本吗?除了比较内容之外,我看不出一种简单的方法来判断您的版本。找到本书的“ 文档修订历史”部分。检查该部分的最新更新,如果日期为2014-08-04,则您拥有最新版本。
阿利斯泰尔·麦克米伦

你只是旧副本。它将下载新的更新副本。我已经尝试过了,而且行得通。您可以在本书内的文档修订历史记录中查看修订历史记录。
Pratik

Answers:


12

右键单击相应书籍,然后选择,您应该可以下载新的副本Delete。然后,一旦删除完成,请右键单击并选择Download "The Swift Programming Language"

或者...

通过iBooks下载的所有书籍都存储在以下文件夹中。

/Users/YOURUSERNAME/Library/Containers/com.apple.BKAgentService/Data/Documents/iBooks/Books

在我的两台Mac上,“ Swift编程语言”书都包含在一个名为的文件夹中881256329.epub。通过检查该文件夹中的iTunesMetadata.plist文件,可以确认在Mac上也是如此。您应该在文件末尾看到书名。

关闭iBooks并删除此文件夹。

然后再次打开iBooks并尝试打开该书。iBooks会告诉您。This book can't be found. The original file can't be found.然后,如果您尝试再次访问该书,iBooks将下载一个新副本。


自从我开始解决问题以来已经过了3个小时。上面的答案也无济于事:(
Ramazan Polat

1
删除该书,然后重新下载应该可以。确保打开书并查看“版本兼容性”部分,以查看它所指的Swift版本。书的封面可能会引起误解。苹果的“图书”应用长期存在问题,该应用中显示的封面错误。对于本书,封面可能会说它是针对较早版本的Swift的,但是如果您查看本书内部,应该会看到它是当前版本。
Peacetype '19

五年后,问题仍然存在。该解决方案对我不起作用。
菲尔

1
谢谢@peacetype。我发现您还可以通过将书籍的副本拖到桌面上并在Finder中预览来查看正确的封面,但这不能解决“书籍”应用本身的问题。我在下面发布了对我有用的解决方案。
卡尔

2

如果您尝试删除这本书并再次下载,但它似乎仍然是旧版本,则可能只是您的图片库中显示了错误的封面(如注释中提到的@peacetype)。这个特殊问题仍然会在2019年影响我(毫无疑问会影响其他人)(macOS Mojave 10.14.5和Books 1.19)。

我在网上找不到有关此旧封面的缓存位置的任何信息,所以我开始进行挖掘,最终在这里找到了它:

/Users/YOURUSERNAME/Library/Containers/com.apple.iBooksX/Data/Library/Caches/com.apple.iBooksX/ic-BKLibraryImageSource-2.cache

退出“图书”应用,将此文件拖到垃圾箱,然后重新启动“图书”。

当我的图书馆第一次出现时,其中几本封面立刻变灰,然后在几秒钟内出现了正确的封面。我的Swift编程语言书籍封面最后说了“ Swift 5 Edition”(而不是4.1或以前的版本)。


-1

使用终端:

1.-转到〜/ Library / Containers / com.apple.BKAgentService / Data / Documents / iBooks /

2.-找出包含书籍的文件夹,然后进入

3.-执行:zip -rqX〜/ path / to / store / the / Swift.epub。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.