和 Tachiyomi 的区别 - Hentioe/mikack-mobile GitHub Wiki

前言

可能你会好奇,本项目和 Tachiyomi 有什么联系吗?毕竟都是开源项目,而且看起来很相似。

答案是:没有任何联系。本文将会为您简单的介绍二者差异。

特别鸣谢

虽然和 Tachiyomi 之间没有“基于”关系,但本应用的「特别鸣谢」页面仍然提到了 Tachiyomi 项目。因为 Tachiyomi 的功能和界面是本项目雏形的最关键参考,初版的 Mikack 至少 80% 和 Tachiyomi 是等同的。

不过随着版本的提升,二者的差异会越来越大。

技术差异

在技术上二者存在很本质区别。在开发语言、架构和构建应用的框架都截然不同。

Tachiyomi 是用 Kotlin 和 Java 实现的常规 Android 应用,它的设计非常优秀!对新来源的支持是通过安装对应的扩展包做到的。

这是非常聪明的做法,在减小应用体积和独立修复来源问题上都有优势。

而 Mikack 是用 Rust 语言实现的核心原生模块 + Flutter 框架构建的非常规 Android 应用。实际上它不仅仅是 Android,它是跨平台的。

跨平台

用 Rust 实现关键核心可以在几乎任何平台上运行,和几乎任何技术集成,就像本项目一样。这也是本项目诞生的原因:一个原本跨平台的东西支持了一个新的平台,仅此而已。所以本应用实际上是一个周边项目。

与 mikack 核心有关的不仅仅是本项目,还有例如运行在 Web 上的云端站点、桌面系统客户端、命令行程序等等。它们全部共享同一个核心,拥有完全等同的能力。

实际上 Mikack 也可以做成扩展包独立更新的模式,但由于架构差异,带来的优势并不会很明显。更主要的,当前本项目还未稳定。这也是为什么 Mikack 的所有来源支持都集成在一起,同时也是二者的最显著区别。

同类项目推荐

首推的是初版参考项目:Tachiyomi

我注意到还有一些同类开源项目,我会对它们保持关注。发现它们的参考性并用来改进本项目,也可能将它们记录在推荐列表。