隐私政策
生效日期:2025年1月1日
最后更新:2025年5月5日
欢迎使用轻风像素画 / Breeze Pixel Studio(以下简称"本应用")。我们深知个人信息对您的重要性,并将按照法律法规的规定,保护您的个人信息及隐私安全。请您在使用本应用前,仔细阅读并充分理解本隐私政策。
本隐私政策适用于轻风像素画(Breeze Pixel Studio)客户端(包括 iOS、Android、Web、Windows、macOS、Linux 等平台版本)以及相关服务。
一、我们如何收集和使用您的个人信息
1.1 注册与账号
当您注册账号时,我们需要收集以下信息:
| 信息类型 | 是否必填 | 用途 |
|---|---|---|
| 用户名(username) | 必填 | 账号唯一标识,用于登录 |
| 密码(password) | 必填 | 账号安全验证,采用 PBKDF2 加密存储 |
| 昵称(nickname) | 必填 | 社区展示名称 |
| 邮箱(email) | 选填 | 账号安全验证、密码重置、注销确认 |
1.2 个人资料
您在使用本应用过程中,可自愿完善以下个人资料:
- 头像:用于个人主页和社区展示
- 背景图:用于个人主页装饰
- 性别:用于个人主页展示(可选择:未知/男/女)
- 个性签名:用于个人主页展示
- 称号:通过等级、成就、活动、会员等途径获得的虚拟称号
以上信息均由您自愿提供,您可随时修改或删除。
1.3 设备信息
为保障服务稳定运行和优化用户体验,我们会收集以下设备信息:
- 设备标识符:应用首次启动时生成的 UUID v4,存储在本地,用于会话追踪和设备绑定
- 操作系统版本:如 Android 14、iOS 17 等
- 设备型号:如 Samsung Galaxy S24、iPhone 15 Pro 等
- 应用版本号:当前安装的应用版本
- 平台类型:Android / iOS / Web / Windows / macOS / Linux
以上信息仅在应用启动或前台恢复时上报,用于:
- 统计应用使用情况(会话开始/结束、会话时长)
- 维持会话心跳(每 30 秒一次)
- 登录后绑定设备到用户账号
1.4 使用记录
我们会记录以下使用行为数据:
- 会话记录:应用启动时间、使用时长、会话 ID
- 登录记录:最后登录时间
- 互动数据:关注/粉丝数、作品数、获赞数、收藏数
- 通知记录:系统通知、互动通知的已读/未读状态
1.5 用户创作内容
您在使用本应用创作和分享时,我们会处理以下内容:
- 像素画作品:画布数据、项目文件、导出图片
- 合集:作品合集信息
- 专题:专题创建及参与信息
以上内容在您主动发布时上传至服务器,未发布的作品仅存储在您的本地设备上。
1.6 图片与文件
以下场景中我们会访问您的图片和文件:
- 从相册选择图片:用于创作参考图、头像上传、背景图上传
- 拍摄照片:用于创作参考图(需授权相机权限)
- 保存图片到相册:导出/保存创作的像素画作品
- 选择文件:桌面端(Windows/macOS/Linux)选择本地图片文件
二、我们如何使用权限
2.1 Android 权限
| 权限 | 对应 API 级别 | 用途 | 是否可拒绝 |
|---|---|---|---|
READ_MEDIA_IMAGES | Android 13+ | 读取相册图片作为参考图或上传头像/背景图 | 是,拒绝后无法选择图片 |
READ_EXTERNAL_STORAGE | Android 12 及以下 | 读取外部存储中的图片 | 是,拒绝后无法选择图片 |
| 相机权限(运行时) | 全部 | 拍摄照片作为参考图 | 是,拒绝后无法拍照 |
2.2 iOS 权限
| 权限 | 用途 | 是否可拒绝 |
|---|---|---|
NSPhotoLibraryUsageDescription | 访问相册以选择参考图片,参考图片将帮助您在绘制像素画时作为视觉参考 | 是,拒绝后无法选择图片 |
NSPhotoLibraryAddUsageDescription | 保存图片到相册 | 是,拒绝后无法保存到相册 |
| 相机权限(运行时) | 拍摄照片作为参考图 | 是,拒绝后无法拍照 |
2.3 权限说明
- 所有权限均需您主动授权,我们不会在未获授权的情况下访问相关功能
- 您可以随时在系统设置中关闭已授予的权限
- 拒绝权限不会影响应用其他功能的正常使用,仅会影响依赖该权限的特定功能
- 我们在请求敏感权限(如相机)前,会向您展示权限用途说明对话框
三、我们如何存储和保护您的个人信息
3.1 信息存储方式
本地存储
- SharedPreferences:用于存储身份认证令牌(Access Token、Refresh Token)和设备标识符
- SQLite 数据库:用于存储本地像素画文档、动画帧、素材等创作数据
本地存储的数据不会离开您的设备(除非您主动上传同步)。
服务器存储
- Cloudflare D1 数据库:存储用户账号信息、个人资料、社交关系、作品元数据等
- Cloudflare R2 对象存储:存储用户上传的图片文件(头像、背景图、作品图片等)
- Cloudflare KV:存储 Refresh Token 用于服务端令牌吊销验证
服务器位于 Cloudflare 全球边缘网络,数据传输全程 TLS 加密。
3.2 安全措施
我们采取以下措施保护您的个人信息安全:
- 密码保护:采用 PBKDF2 算法(100,000 次迭代)加盐哈希存储,服务器不存储明文密码
- 令牌安全:
- Access Token 有效期 7 天,采用 HS256 签名
- Refresh Token 有效期 30 天,采用令牌轮换机制(旧令牌使用后自动失效)
- 登出时服务端删除 KV 中的 Refresh Token 记录,实现服务端令牌吊销
- 令牌失效时自动尝试无感刷新,刷新期间请求排队等待
- 传输加密:所有网络通信均使用 HTTPS (TLS) 加密传输
- 权限最小化:API 请求按需携带认证令牌,公开接口不要求认证
- 账号注销:支持账号注销功能,注销后进入冷静期,冷静期内可取消注销
3.3 数据保留期限
- 账号信息:在您使用本应用期间持续保留,账号注销后删除或匿名化处理
- 认证令牌:Access Token 7 天过期,Refresh Token 30 天过期或登出时删除
- 设备标识符:存储在本地,卸载应用后自动删除
- 会话数据:用于统计分析,保留期限不超过 180 天
- 创作内容:在您删除或账号注销前持续保留
四、我们如何共享、转让和公开披露您的个人信息
4.1 共享
我们不会将您的个人信息出售给任何第三方。以下情况中,我们可能会共享您的信息:
- 服务提供商:我们使用 Cloudflare 提供服务器托管、数据库、对象存储和 CDN 服务,Cloudflare 仅在必要时处理您的数据以提供上述服务
- 法律要求:根据法律法规、诉讼、政府机关的强制性要求,我们可能需要共享您的信息
4.2 公开披露
以下信息可能对其他用户可见:
- 公开资料:昵称、头像、性别、个性签名、当前称号、等级、粉丝/关注/作品/获赞/收藏数
- 公开作品:您发布为公开的作品
- 公开合集:您创建的合集
- 社交关系:关注列表、粉丝列表
您可以通过设置作品的可见性(公开/私密)来控制作品是否对其他用户可见。
4.3 不共享的情况
我们不会向第三方共享以下信息:
- 您的密码(加密存储,任何人无法查看明文)
- 您的认证令牌
- 您的邮箱地址(不会展示给其他用户)
- 您的设备标识符
- 您的未发布作品
五、您的权利
5.1 访问和更正
您有权访问和更正您的个人信息,可通过以下方式行使:
- 个人资料:在"编辑资料"页面查看和修改昵称、头像、背景图、性别、个性签名
- 邮箱:在账号设置中更换绑定邮箱(需验证码确认)
- 作品管理:查看、编辑、删除您发布的作品
5.2 删除
- 作品删除:您可以删除发布的作品、合集
- 账号注销:您可以在账号设置中申请注销账号
- 注销申请提交后进入冷静期(具体天数以应用提示为准)
- 冷静期内您可以登录并取消注销
- 冷静期结束后,账号及关联数据将被永久删除
5.3 权限撤回
您可以随时在设备系统设置中关闭已授予的权限:
- Android:设置 → 应用 → 轻风像素画 → 权限
- iOS:设置 → 隐私与安全性 → 对应权限
5.4 数据导出
您可以导出本地存储的像素画作品文件(.pxa 格式或图片格式),但暂不支持批量导出服务器端数据。
六、未成年人保护
我们非常重视对未成年人个人信息的保护。如果您是未满 14 周岁的未成年人,请在监护人的陪同和指导下使用本应用,并在注册和提供个人信息前取得监护人的同意。
如果我们发现在未取得监护人同意的情况下收集了未成年人的个人信息,我们将尽快删除相关信息。
七、隐私政策的更新
我们可能会适时修订本隐私政策。更新后的隐私政策将在应用内公告或以其他适当方式通知您。对于重大变更,我们会提供更为显著的通知。
若您在隐私政策更新后继续使用本应用,即表示您同意受修订后的隐私政策约束。
八、联系我们
如果您对本隐私政策有任何疑问、意见或建议,可通过以下方式联系我们:
- 应用内反馈:通过应用内的意见反馈功能提交
- 邮箱:请通过应用内公布的联系方式与我们取得联系
我们将在 15 个工作日内回复您的请求。
附录:第三方 SDK 列表
本应用集成的第三方 SDK 及其可能收集的信息如下:
| SDK 名称 | 用途 | 可能收集的信息 | 隐私政策 |
|---|---|---|---|
| Flutter Framework | 应用开发框架 | 设备信息、应用信息 | https://flutter.dev/privacy |
| image_picker | 图片选择 | 相册访问(需授权) | https://pub.dev/packages/image_picker |
| file_picker | 文件选择(桌面端) | 文件访问(需用户操作) | https://pub.dev/packages/file_picker |
| share_plus | 系统分享 | 不收集个人信息 | https://pub.dev/packages/share_plus |
| permission_handler | 权限管理 | 不收集个人信息 | https://pub.dev/packages/permission_handler |
| url_launcher | 打开外部链接 | 不收集个人信息 | https://pub.dev/packages/url_launcher |
| shared_preferences | 本地键值存储 | 不收集个人信息 | https://pub.dev/packages/shared_preferences |
| sqflite | 本地数据库 | 不收集个人信息 | https://pub.dev/packages/sqflite |
| device_info_plus | 设备信息获取 | 设备型号、系统版本 | https://pub.dev/packages/device_info_plus |
| package_info_plus | 应用信息获取 | 应用版本号 | https://pub.dev/packages/package_info_plus |
| http | 网络请求 | 不额外收集信息 | https://pub.dev/packages/http |
| Cloudflare Workers | 后端 API 服务 | 请求日志(自动) | https://www.cloudflare.com/privacypolicy/ |
| Cloudflare R2 | 文件对象存储 | 不额外收集信息 | https://www.cloudflare.com/privacypolicy/ |
