关于iOS版Expo隐私问题的说明
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
在Jellyfin生态中,我们保证从服务器到移动应用都不存在任何非自愿跟踪行为。即使在今天更新Apple App Store后,这一承诺依然成立。
在开发iOS版Jellyfin移动应用时,我们使用了名为Expo的JavaScript框架。该框架提供了集成化的React Native移动应用开发方案。出于多种技术原因考量,这始终是我们交付iOS应用的最佳方式,尽管当前存在某些限制。
自2020年12月的更新起,Apple要求所有开发者提交新应用或应用更新时必须提供隐私信息。Apple官网有篇文章介绍了这些"隐私标签":"HT211970 - 关于App Store的隐私信息..."。在我们上次更新Jellyfin移动应用时,我们确信符合要求——Jellyfin应用不包含任何跟踪用户或上报数据的代码。我们在更新信息中声明了这一点,并获得了"数据不收集"标签。
然而,我们发现Expo存在导致这一声明失效的问题。今年二月,Apple联系我们并发出通知,指出我们的标签信息有误需要更新。我们在Expo论坛上就此问题进行了深入探讨:"来自App Store Connect关于Facebook应用事件的通知"。当使用Expo构建应用时(采用其"托管"工作流),其编译器会自动包含多种基础代码模块,其中包括可用于提供分析和跟踪功能的代码。尽管我们从未使用这些功能,但这些代码仍会被打包进最终应用,因此我们现在不得不声明应用能够访问设备标识符。
我再次强调:我们绝不跟踪任何用户活动或收集任何数据。
您可以通过GitHub上的代码库进行验证:"jellyfin/jellyfin-expo"。Expo当前的构建流程确实包含可能用于跟踪的代码,但我们的代码从未激活这些功能,我们也完全不会使用。由于这些代码最终存在于应用中,我们必须在App Store更新标签信息。正如Expo在其发布详情页所述:
注意:除非您明确使用API进行操作,否则不会向Branch、Facebook、Segment或Amplitude发送任何数据。
在相关论坛讨论中,Expo承诺未来更新将使其自动化构建服务仅包含实际使用的代码模块,这将使我们能重新获得"数据不收集"标签。为了改进应用并添加更多功能,我们计划未来从Expo"弹出",这意味着我们将完全自主掌控构建流程。
感谢您使用Jellyfin并支持我们至今。iOS应用主要由@thornbill独立开发,他慷慨贡献个人时间持续优化应用。他与部分贡献者已通过GitHub Sponsors、LiberaPay、Patreon等平台设置了捐赠页面。如果您想支持其中任何成员,请访问其个人主页获取详情。若您希望支持Jellyfin整体(仅限基础设施和设备成本),可访问我们在OpenCollective的公共账本。目前项目资金充足,建议优先考虑向贡献者捐赠。
敬请关注未来文章,我们将讨论应用更新动态、Jellyfin团队如何坚守隐私保护承诺,以及贡献者社区的相关信息——包括如何支持开发者和项目发展。
此致, Anthony