KOReader 进度同步配置指南:跨设备接续阅读的实操指南
2026/9/4 10:32:42 网站建设 项目流程

KOReader 进度同步配置指南:跨设备接续阅读的实操指南

【免费下载链接】koreaderAn ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices项目地址: https://gitcode.com/GitHub_Trending/ko/koreader

晚上在手机上把一本书翻到第 83 页,第二天想换 Kindle 接着读,结果它还停在第 30 页?这就是 KOReader 跨设备阅读进度同步要解决的问题:把"读到哪了"这件事存到云端,任何一台登录了同一账号的设备打开这本书时都能对上位置。

配完之后你能得到:打开书自动跳到云端最新位置;关书、休眠时自动把当前位置推上去;两台设备同时读过一本书时,弹窗告诉你哪边更新,由你决定跳不跳。

动手之前确认这几件事:

  • 两台设备都装了 KOReader(Kindle、Kobo、手机等任意设备组合都行)
  • 设备能连上网络
  • 想一个能记住的用户名和密码
  • 如果打算开自动同步,把网络设置里"Wi-Fi 关闭时的动作"改成"打开"(开自动同步时 KOReader 会直接提醒你)

先花 10 秒理解一下原理,后面调参数就不迷糊了。KOReader 用一个叫 KOSync 的插件干这个活,核心逻辑在 plugins/kosync.koplugin/。每本书在服务器上的进度是以"文档标识"为键存的:默认取文件内容的 MD5 校验和,意思是两台设备上的文件必须一模一样才算同一本书。进度本身包含百分比、xpointer 位置、设备名和时间戳。动作只有两个:开书时拉(pull)云端进度,关书或休眠时推(push)本地进度;哪边新就用服务器返回的时间戳和本机最近翻页时间比。推失败(断网)不丢数据,会存进本地队列,网络恢复后自动补推。

注册并登录同步账号

打开主菜单(左上角汉堡按钮),找到Progress sync(进度同步),点里面的Register / Login。弹出输入框后填用户名和密码,第一次点Register,以后都点Login。看到"Logged in to KOReader server."的提示就成了。放心,密码只在本地算成 MD5 哈希再发出去,明文凭据不上传,存在本地的kosync.lua配置文件里。

菜单里还有个Custom sync server项,默认指向官方同步服务器,普通用户不用动;自己搭了 KOSync 服务才需要改它。

设置同步方向和策略

账号配好之后,进Sync behavior子菜单,这里有两组开关,别被术语绕晕:

  • Sync to a newer state:云端有更新的位置时怎么办。默认Prompt(弹窗问你,显示来源设备名和百分比),也可以Silently直接跳过去,或Never不管。
  • Sync to an older state:你本地读得比云端更远时怎么办。默认Never——不往回跳,防止你在某台设备上读完了,换设备打开却被拽回前文。

大多数人的最佳组合就是"新的问我,旧的不理",保持默认即可。

开启自动同步

回到 Progress sync 菜单,勾选Automatically keep documents in sync。KOReader 会先做一次拉取,确认云端位置不会被你马上关书时推上来的旧进度盖掉——这个细节挺贴心。

开好之后行为是这样的:开书自动拉取最新位置;关书、设备休眠时自动推送当前位置;翻满设定页数也会推一次。断网时推送进队列,网络恢复自动补推,不用你操心。

旁边那项Periodically sync every # pages就是设页数阈值的,拖个数字出来,点 Set。

手动推/拉一次验证

回到菜单,点Push progress from this device now推一次,然后在另一台设备上打开同一本书,点Pull progress from other devices now。看到Progress has been synchronized.提示,整条链路就通了。

关键参数速查

参数默认作用
自动同步(auto sync)开书拉取、关书推送
每 N 页同步一次0(关)翻阅超过 N 页才触发一次推送,省流量
同步到新位置弹窗发现更远的进度时:问 / 静默跳 / 不处理
同步到旧位置关闭本地读得更多时:不往回跳
文档匹配方式按内容校验二进制校验(文件须完全一致)或按文件名匹配
设备主机名机型名同步弹窗里显示"来自哪台设备"

进阶调优

  • 两台设备的书文件名不一致(比如一台叫book.epub另一台叫book_v2.epub):把Document matching method改成按文件名匹配,它会用文件名的 MD5 做标识,内容不完全相同也能对上;反过来,同内容不同名的文件在二进制模式下会同步不到。
  • 自架同步服务器:有 NAS 或服务器可以自建 KOSync,把Custom sync server填上你的地址,进度数据就完全留在自己手里。
  • 给设备起名字Device hostname里给每台设备设个名字(比如"手机""Kindle"),弹窗提示"来自 XXX 的 83% 位置"时一眼就能分辨。

你可能会遇到的情况

  • 自动同步勾不上去:提示要求把网络设置里的"Wi-Fi 关闭时的动作"改成"打开"。因为自动同步要随时能连网,"每次问我"在这种场景下没法用。
  • 提示"Latest progress is coming from this device":说明云端最新进度本来就是这台设备推上去的,不用任何操作,关掉就行。
  • 离线推送失败:别慌,进度进了本地队列,联网后自动补推。只有账号失效(认证失败)才会直接报错,重新登录即可。

现在你可以放心把书丢给任意一台设备:手机读到一半,Kindle 上打开就是同一个位置。想看实现细节的话,plugins/kosync.koplugin/main.lua 里的updateProgressgetProgress两个函数就是推和拉的全部逻辑,数据存在哪、怎么比对,对照着看一遍就明白了。

【免费下载链接】koreaderAn ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices项目地址: https://gitcode.com/GitHub_Trending/ko/koreader

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询