摘要

本地播放、播放列表、收藏以及大部分设置都在你的设备上处理。BlueMusic 不出售个人数据,也不使用第三方广告或跨应用追踪。

可选的联网功能可能会处理提供该功能所需的有限数据:云存储和个人媒体服务器浏览、在线电台、封面、歌词和元数据查找、音频识别、Firebase 登录、音乐库同步、共享播放列表以及订阅验证。

本地音乐库

除非你选择访问云服务商或你自己媒体服务器上的文件,否则你的音频文件始终留在你的设备上。BlueMusic 会在你的设备上保存本地应用数据,例如播放列表、收藏、已隐藏的项目、播放状态和设置。

无论是为了播放还是为了音乐库同步,BlueMusic 都不会把你的音频文件上传到我们的服务器。

账号与音乐库同步

把 BlueMusic 当作本地音乐播放器使用无需账号。如果你开启音乐库同步,BlueMusic 会使用 Firebase Authentication,让你的数据只属于你的账号。

你可以使用电子邮件和密码登录,也可以使用 Google 登录,在 iOS 上还可以使用 Apple 登录。根据你选择的方式,Firebase 可能会处理一些标识符,例如你的 Firebase 用户 ID、电子邮件地址、Google 账号标识符或 Apple 登录标识符。我们仅将其用于验证你的身份和保护你的数据。

音乐库同步会把你的播放列表和收藏保存在 Firebase Firestore 中你自己的账号名下,并在你的各台设备之间实时保持最新。一条播放列表记录包含标题、艺术家、时长,以及在你其他设备上找到同一首歌所需的标识符。你的音频文件绝不会被上传,你的设置、你编辑过的歌词和自定义封面图片也不会:它们只留在你创建它们的那台设备上。

由于你的数据保存在你的账号中,在新设备上登录时就能找回。这是一份实时副本,而不是带日期的快照:你所做的修改或删除也会应用到你的其他设备上。当你删除一个播放列表时,它会被保留 30 天以便你恢复,之后被永久删除。该恢复期仅适用于已删除的播放列表,不适用于单条收藏。

同步使用 Firebase Cloud Functions、Firebase App Check、身份验证和服务器端安全规则,并通过加密连接传输。

共享播放列表

如果你通过链接共享一个播放列表,打开该链接的人便会加入其中,可以和你一起查看并编辑它。从那一刻起,该播放列表的名称及其中包含的歌曲条目对每一位成员都可见,任何一位成员所做的更改其他人也都能看到。

共享播放列表与你的个人数据分开存储,只有其成员可以读取。是否共享由你决定,并且只适用于你决定共享的那些播放列表:你音乐库的其余部分仍然只属于你的账号。任何持有该链接的人都可以加入,因此请像对待任何私密链接那样对待它。

共享播放列表携带的歌曲信息与普通播放列表相同。它们绝不会携带你的音频文件、除成员身份之外的账号信息,也不会携带你的云服务商或媒体服务器的任何凭据。

如果你删除账号,你创建的共享播放列表会对所有人删除,同时你也会从其他人创建的共享播放列表中被移除。

订阅与购买

音乐库同步和共享播放列表属于付费功能。购买由 Google Play Billing 或 Apple In-App Purchase 处理。BlueMusic 会先向 Google Play 或 Apple 验证订阅状态,然后再启用这些功能。打开别人发给你的共享播放列表则无需订阅。

出于防欺诈、恢复购买和技术支持的目的,BlueMusic 会在 Firebase 中保存有限的订阅记录,例如产品 ID、平台、订阅状态、到期时间、验证时间,以及经过哈希处理的购买或交易标识符。我们的后端不会以明文形式保存原始购买令牌。

账单、取消、退款和税务数据由 Google 或 Apple 根据你购买时使用的商店账号处理。

云存储与媒体服务商

Google Drive、OneDrive、Dropbox、Box、pCloud、自托管媒体服务器

如果你连接了云存储账号,BlueMusic 会使用你批准的权限来浏览和播放你自己的音频文件。在支持的情况下,BlueMusic 会请求只读访问权限。它不会为了播放而修改、删除这些存储服务商中的文件,也不会向其上传文件。

OAuth 令牌和媒体服务器凭据会保存在你的设备上,并在平台提供安全存储时借助其安全存储保存。浏览或串流云端文件的请求会发送到你所选择的服务商。

如果你手动配置了通过普通 HTTP 访问的自托管服务器,与该服务器之间的流量可能不会经过 TLS 加密。远程服务器请尽可能使用 HTTPS。

Google API 服务 - 有限使用

BlueMusic 对从 Google API 收到的信息的使用和向任何其他应用的传输,都将遵守 Google API 服务用户数据政策,包括其中的有限使用(Limited Use)要求。

对你 Google Drive 的只读访问只用于一个目的:让你在 BlueMusic 内浏览和播放你自己的音频文件。这些 Google 用户数据:

  • 仅用于提供或改进应用内的音乐播放功能;
  • 不会转让或出售给第三方,除非为提供该功能、遵守适用法律,或作为合并或收购的一部分而确有必要;
  • 不会用于广告或与之无关的用户画像;以及
  • 不会被人工读取,除非你为获得支持而明确同意、出于安全需要,或法律另有要求。

封面、歌词与元数据查找

当你要求 BlueMusic 查找封面或补全歌曲元数据时,应用可能会把搜索词、歌曲标题、艺术家、专辑、时长、ISRC 或其他音乐标识符发送给下列服务,以便获取公开的封面、曲目信息和歌词。这些查找不会上传你的音频文件,下文所述的音频识别情形除外。

Apple、iTunes Search API 和 BlueMusic 的 Firebase 后端

歌曲信息会发送给 Apple 的公开搜索服务,以及 BlueMusic 自己的 Firebase 后端(后者代表应用查询 Apple Music 目录),以获取封面图和曲目信息。

LRCLib

当一首歌的文件内没有存储歌词时,应用会自动在 lrclib.net 上查找,并发送匹配所需的标题、艺术家、专辑和时长。这是一项免费的公共服务,无需账号。

ShazamKit

如果你请求 BlueMusic 识别一首无法命名的曲目,应用会为该音频文件生成声学指纹,并把它发送给 Apple 的 ShazamKit 服务以获取标题和艺术家。这只会在你自己发起时、针对你选择的那首歌发生。

Radio Browser

当你开始播放一个电台时,应用会通知公开的 Radio Browser 目录,以便记录该电台的播放次数。该通知标识的是电台,而不是你。

这些查找用于提供你所请求的应用内功能,不会用于广告。

在线电台

电台列表已内置在应用中,因此浏览它无需账号,也不需要网络请求。当你播放某个电台时,你的设备会直接连接到该广播方的音频流,广播方会收到任何互联网请求都会携带的连接数据,例如你的 IP 地址。BlueMusic 无法控制广播方记录哪些内容。

诊断与支持

BlueMusic 不包含广告追踪器,也不使用分析产品。平台服务商,例如 Google Play、Apple、Firebase、Google 或 Apple 登录,可能会提供运营其服务所需的崩溃、完整性、账单或安全信息。

应用会向 Firebase Crashlytics 发送崩溃和错误报告,以便我们修复出问题的地方:包括意外崩溃,以及应用在没有崩溃的情况下检测到的部分错误,详见下一段。它还会发送一小组关于某次安装首次使用情况的匿名计数,每一项在该次安装的生命周期内最多发送一次:你授予、拒绝还是跳过了音乐权限,首次音乐库扫描已完成以及扫描到多少首歌曲,首次播放已发生,以及已发送反馈。这些计数不含任何标识符,只按平台汇总为每日总数,因此不会留下任何单台设备的记录。

未导致应用关闭的错误,只有在让你无法完成某件事时才会上报,并且每个错误在每次会话中最多上报一次:例如购买或恢复购买未能完成、下载失败、播放列表或收藏未能同步,或者某首歌曲无法播放或删除。报告会说明应用当时在做什么、涉及哪个服务商(如 Google Drive 或 Jellyfin),有时还会说明在哪个界面,以及错误的类型和代码、错误发生在应用代码中的哪个位置。报告还可能附带关于刚刚发生了什么的简短记录,例如开始播放了一首本地歌曲、一个电台或一首云端歌曲,但不会说明是哪一首。报告绝不包含你的音乐、播放列表或电子邮件地址,也不包含歌曲标题、文件或文件夹名称、网址或你的服务器地址、密码或令牌。与所有 Crashlytics 报告一样,它还包含设备的技术数据(型号、系统和应用版本、可用内存和存储空间)以及由 Firebase 生成的随机安装标识符。Crashlytics 还会记录每次使用会话的开始时间,但不记录你在会话中做了什么,用于计算有多少会话在未崩溃的情况下结束。以上信息均不会与你的 BlueMusic 账号或广告标识符关联,Crashlytics 会在 90 天后将其删除。我们基于让应用正常、安全运行的正当利益处理这些数据。你可以随时在设置 → 关于中关闭发送错误报告,停止发送崩溃和错误报告。

如果你在应用内向我们发送反馈,该消息会附带应用版本和构建号、你的操作系统版本、你的设备型号和制造商,以及你在应用中选择的语言。我们仅用它来复现和修复你所反映的问题。

如果你通过电子邮件联系我们寻求支持,我们会收到你的电子邮件地址以及你选择写入消息中的任何内容。我们仅将该信息用于回复、排查故障、保护服务或遵守法律义务。

账号、数据保留与删除

你可以在应用内或通过提出请求,删除你的 BlueMusic 账号及其同步数据。详细步骤请参阅我们专门的删除你的账号页面。

删除应用或清除其应用数据即可移除设备上的本地数据。在 Android 上,如果你开启了 Google 备份,Google 还会在你自己的 Google 账号中保存一份 BlueMusic 的设置和其他本地数据(例如你的播放列表和收藏)的副本,我们无法访问这份副本。这份副本绝不包含你的音频文件、下载内容、音乐库、云服务商的访问令牌或你的服务器密码。在 iPhone 和 iPad 上,如果你开启了 iCloud 云备份,BlueMusic 的数据会像其他任何应用的数据一样包含在设备的 iCloud 云备份中,包括设置、你的播放列表和收藏,以及你导入 BlueMusic 的歌曲;从云服务商下载的歌曲不包含在内。这份备份由 Apple 保存在你自己的 iCloud 账号中,我们同样无法访问。云服务商的访问权限可以在该服务商的账号设置中撤销。

如需请求删除你的 BlueMusic 账号或其同步数据,请从与你 BlueMusic 账号关联的电子邮件地址发送邮件至 laskyfeedback@gmail.com,并在主题中写明 "BlueMusic account deletion"。

在我们核实所有权之后,我们会删除该 Firebase Authentication 账号、你同步的播放列表和收藏、你创建的共享播放列表,以及与该账号关联的订阅权益记录,除非出于安全、防欺诈、法律合规、争议处理或税务/会计义务,我们必须保留有限的记录。

你也可以只请求删除你的同步数据,而不删除账号。我们力争在 30 天内完成已核实的删除请求,除非法律,或正在进行的争议、安全调查或防欺诈冻结要求更长的期限。

儿童

BlueMusic 并非面向未达到适用法律所要求的、可自行同意使用在线服务年龄的儿童。如果你不被允许这样做,请不要启用在线账号或付款功能。

谁对你的数据负责

就欧盟《通用数据保护条例》(GDPR)而言,本政策所述个人数据的控制者是 Pedro Antonio Flores Casquet,他以 Lasky 的名义发布自己的应用。

你的权利

你的个人数据由你掌控。根据《通用数据保护条例》(GDPR)及同等法律,你可以:

  • 访问我们持有的关于你的个人数据。
  • 更正任何不准确或不完整的信息。
  • 获取你已同步的播放列表和收藏的副本(数据可携权)。
  • 请求删除你的账号及其已同步的数据。
  • 反对基于我们正当利益的处理,例如崩溃和错误报告。
  • 要求限制对你数据的处理。
  • 向你所在地的数据保护机构投诉(在西班牙为 AEPD)。

如有任何隐私问题,或希望行使你对自己数据的权利,请写信至 laskyfeedback@gmail.com。

变更与联系方式

我们可能会不时更新本隐私政策。更新会体现在本页面上,并标注新的日期。

技术支持:laskyfeedback@gmail.com