该存储库是 Wire 源代码的一部分。您可以在wire.com 上或联系[email protected] 找到更多信息。
您可以在 github.com/wireapp/wire 找到已发布的源代码,并在 https://wire.com/en/download/ 找到最新版本的 apk。
有关许可信息,请参阅随附的许可证文件和第三方许可证列表,网址为:wire.com/legal/licenses/。
如果您编译我们不时提供的开源软件来开发您自己的移动、桌面或 Web 应用程序,并导致该应用程序出于任何目的连接到我们的服务器,我们将生成的应用程序称为“开源应用程序”应用程序”。所有开源应用程序均受适用于 Wire 应用程序的使用条款的约束,并且只能根据适用于 Wire 应用程序的使用条款进行使用和/或商业化,该使用条款可在 https://wire.com/legal/#terms 上找到。此外,如果您选择构建开源应用程序,则存在某些限制,如下所示:
一个。您同意不改变开源应用程序与我们的服务器连接和交互的方式; b.您同意不削弱开源应用程序的任何安全功能; c.您同意不使用我们的服务器存储数据用于开源应用程序的预期和原始功能之外的目的; d.您承认您对您的开源应用程序的任何及所有更新承担全部责任。
为清楚起见,如果您编译我们不时提供的开源软件来开发您自己的移动、桌面或 Web 应用程序,并且不导致该应用程序出于任何目的连接到我们的服务器,则该应用程序将不会被被视为开源应用程序,上述规定不适用于该应用程序。
Wire 商标及其相关徽标未获得任何许可,所有这些商标及其相关徽标将继续由 Wire Swiss GmbH 独家拥有。未经 Wire Swiss GmbH 事先明确书面同意,明确禁止使用 Wire 商标和/或其相关徽标。
此存储库中的项目包含适用于 Android 客户端项目的 Wire。您可以自己构建该项目。但是,与 Play 商店中提供的二进制 Wire 客户端存在一些差异。这些差异是:
为了在本地构建适用于 Android 的 Wire,需要安装以下工具:
这些是通过命令行可用的gradle
任务:
./gradlew compileApp
: 编译 Wire Android 客户端./gradlew assembleApp
:组装 Wire Android 客户端./gradlew runApp
:在连接的设备中组装并运行 Wire Android 客户端。./gradlew runUnitTests
:运行所有单元测试。./gradlew runAcceptanceTests
:在连接的设备中运行所有验收测试。./gradlew testCoverage
:生成测试代码覆盖率报告./gradlew staticCodeAnalysis
:在 Wire Android 代码库上运行静态代码分析通过浏览到项目目录的build.gradle.kts
文件的根路径,将项目导入为 gradle 项目。
克隆 Android 项目后,您的 IDE(IntelliJ 或 Android studio)上可能会出现一些构建问题。为了避免大多数这些情况,请确保:
git submodule update --init --recursive
(以初始化嵌入式 Kalium 子模块项目中的任何所需配置)local.properties
和kalium/local.properties
文件上有一个有效的 SDK 路径,指向 Android SDK 文件夹。在 Mac 中,该文件夹通常可以在sdk.dir=/Users/YOUR_USER_FOLDER/Library/Android/sdk
下找到。 IDE不会自动创建kalium/local.properties
,因此您可能需要将其复制/粘贴到项目根目录中kalium
子模块引用: git submodule update --remote --merge
我们有几种不同的应用程序风格,具有不同的预期用途。每个应用程序风格都有不同的图标背景颜色,以便于区分。要了解它们的详细定制方式,请检查风味配置文件。
笔记
对于自定义构建,我们会覆盖一些标志、字符串和图标。检查 CUSTOMIZATION.md 了解详细信息。
姓名 | 图标背景颜色 | 描述/预期用途 | 启用日志记录 | 默认后端 |
---|---|---|---|---|
开发者 | ? | 用于开发新功能。血淋淋的边缘。不稳定。暂存后端。早餐吃实验性功能,甜点喝开发人员的眼泪。 | ✅ | 电线分级 |
分期 | ? | 主要用于 QA 测试具有暂存后端的类似发布的应用程序。模仿生产/发布应用程序,具有以下 Prod/White 应用程序之后的功能标志,但具有额外的开发工具。 | ✅ | 电线分级 |
内部的 | ? | 目前未使用(?)。它过去曾被使用过,可能很快就会被删除。 | ✅ | 线材产品 |
贝塔 | ? | 被公司内部用户用作dogfood。一些尚未为公众准备好的功能可能会首先在这里进行测试。 | ✅ | 线材产品 |
产品 | ⚪ | 该生产应用程序可供公众使用。 | ✖️ | 线材产品 |
F-机器人 | ⚪ | 也是一个可供公众使用的生产应用程序。发布在 F-Droid 商店,但没有任何闭源软件。 | ✖️ | 线材产品 |
重要的
除 Prod 和 F-Droid 之外的所有版本的日志都将上传到第三方服务以供开发人员分析。
Prod 和 F-Droid 上的日志可以在应用程序中启用,但不会上传到任何地方。用户可以从应用程序手动导出和读取日志文件。
我们不会以任何方式记录敏感内容(例如消息内容、加密密钥等)。诸如唯一标识符之类的东西被混淆了。
可以构建应用程序以进行发布或调试。调试版本可能有额外的调试工具,不会缩小,并且可以根据需要进行分析。一般来说,由于缺乏最小化,调试构建运行速度较慢。
如果您想为 Android 版 Wire 做出贡献,请参阅 CONTRIBUTING.md 文件以获取更多信息。