首页
/ Flutter社区plus_plugins项目中的connectivity_plus隐私清单问题解析

Flutter社区plus_plugins项目中的connectivity_plus隐私清单问题解析

2025-07-09 17:45:36作者:咎竹峻Karen

在Flutter应用开发中,connectivity_plus作为一款常用的网络连接状态检测插件,近期在macOS平台的应用商店提交过程中遇到了隐私清单缺失的问题。本文将深入分析该问题的背景、原因及解决方案。

问题背景

苹果公司于2024年2月12日起实施新政策,要求所有包含隐私影响SDK的应用必须提供隐私清单文件。connectivity_plus插件6.1.0版本在macOS平台提交应用商店时,收到了ITMS-91061错误提示,指出缺少必要的隐私清单文件。

技术分析

connectivity_plus插件实际上已经包含了PrivacyInfo.xcprivacy隐私清单文件,但问题出在CocoaPods的配置上。当前版本的podspec文件中仅针对iOS平台配置了资源包:

s.ios.resource_bundles = {'connectivity_plus_privacy' => ['connectivity_plus/Sources/connectivity_plus/PrivacyInfo.xcprivacy']}

这种配置方式导致隐私清单文件在macOS平台构建时无法正确打包到最终产物中。正确的做法应该是:

  1. 为macOS平台单独添加资源包配置:
s.osx.resource_bundles = {'connectivity_plus_privacy' => ['connectivity_plus/Sources/connectivity_plus/PrivacyInfo.xcprivacy']}
  1. 或者更简洁地使用通用配置:
s.resource_bundles = {'connectivity_plus_privacy' => ['connectivity_plus/Sources/connectivity_plus/PrivacyInfo.xcprivacy']}

解决方案

开发团队已经确认了这个问题,并准备提交修复。对于开发者而言,可以采取以下临时解决方案:

  1. 等待插件更新后升级到包含修复的版本
  2. 在本地修改podspec文件后重新构建应用
  3. 手动将隐私清单文件添加到macOS目标中

最佳实践建议

  1. 对于跨平台插件开发,应当确保所有目标平台的资源配置完整
  2. 定期检查并更新插件版本,以获取最新的兼容性修复
  3. 在提交应用商店前,使用Xcode的Archive功能验证是否包含所有必需的隐私清单文件
  4. 关注苹果官方关于隐私清单要求的更新,及时调整应用配置

这个问题提醒我们,在Flutter跨平台开发中,虽然代码可以共享,但平台特定的配置和资源管理仍需特别注意,特别是当涉及应用商店审核要求时。

登录后查看全文
热门项目推荐