
LocalSend Windows MSIX 打包、签名与 Microsoft Store 上架完整指南【免费下载链接】localsendAn open-source cross-platform alternative to AirDrop项目地址: https://gitcode.com/GitHub_Trending/lo/localsend本文带你走通 LocalSend 在 Windows 上的完整发布链路准备构建环境、从源码生成 MSIX 包、使用 PFX 证书签名、整理 Microsoft Store 提交材料以及上架后的版本更新与维护做法适合准备上架商店的 Windows 开发者和项目维护者。1. 发布路径与适用场景LocalSend 的 Windows 端有三种交付形态EXE 安装程序、便携 ZIP 包和 MSIX 包。其中 MSIX 又分两种用途商店版本构建时使用--store参数生成提交到 Microsoft Partner Center 审核后由用户在 Microsoft Store 安装更新由商店分发。直发版本用自有证书签名后以文件形式分发用户可直接双击安装不走商店。如果你的目标只是本机使用可以跳过商店提交部分若需要上架或对外分发签名包按下面章节依次执行。2. 开始前必须确认的前提检查项要求验证方式构建机系统Windows 10 1904121H1及以上x64运行winver查看版本号Flutter 版本满足app/pubspec.yaml中flutter: ^3.41.0fvm flutter --versionWindows SDK提供 makeappx、makepri、signtool在 Visual Studio 安装器中确认已装对应版本 SDK签名证书直发版需要 PFX 证书文件与密码证书 CN 须与清单中 Publisher 一致商店开发者账号Partner Center 个人或组织账号能登录并新建应用已有证书和商店账号的读者可跳过本节直接进入第 5 节的签名打包步骤。3. 本地环境与开发工具准备先获取源码仓库地址git clone https://gitcode.com/GitHub_Trending/lo/localsend项目内的构建脚本统一使用 fvm 前缀执行 Flutter 命令建议同步安装 fvm 并配置好匹配的 Flutter 版本避免脚本在错误版本下失败。在app目录下清理缓存并重新解析依赖fvm flutter clean fvm flutter pub get fvm dart run build_runner build -d其中build_runner负责生成 i18n 文案、数据映射等运行时代码漏跑会导致构建报缺符号或翻译文件过期。验证成功的标志是三条命令输出中均无 ERROR。4. MSIX 清单与权限配置清单文件位于support/build/msix/content/AppxManifest.xml关注四处Identity包名为LocalSend.AppPublisher字段决定签名主体。直发版的证书 CN 必须与之匹配否则安装会被系统拒绝商店版则由商店发布方接管。TargetDeviceFamilyMinVersion10.0.19041.0定义了用户系统的最低安装门槛。Capabilities仅声明runFullTrust。LocalSend 需要监听局域网端口、读写文件系统因此以完全信任桌面应用运行商店审核时网络用途需在描述中说明。Extensions注册了开机自启startupTask和系统共享面板入口shareTarget两个扩展点共享入口让用户在系统共享菜单中直接选择 LocalSend。修改包名或发布者后务必同步提升Version字段同一 Identity 只能从旧版本升级安装更高版本号。5. 构建、生成包与签名生成可提交商店的 MSIX 包商店构建由support/scripts/compile_windows_msix_store.ps1承担核心命令如下fvm flutter pub run msix:create --store该命令会编译 Windows release 产物并按清单打包--store参数使包符合商店发布身份规则。脚本随后将产物重命名归档Move-Item build/windows/x64/runner/Release/localsend_app.msix LocalSend-1.18.2-windows-x86-64-store.msix验证成功目标.msix文件存在右键查看属性可看到包标识与发布方信息。使用自有证书签名直发版签名打包对应support/scripts/compile_windows_msix_signed.ps1脚本要求传入证书密码参数fvm dart run msix:create --certificate-path ../secrets/windows-tienisto.pfx --certificate-password $CERTIFICATE_PASSWORDPFX 证书文件按脚本约定放在secrets目录该目录不包含在仓库中需要自行准备。打包完成后可用 signtool 验证签名链signtool verify build\windows\runner\Release\localsend_app.exe验证成功verify 无错误输出在干净系统上双击.msix安装能通过签名校验且无发布者警告。共享功能辅助包系统共享面板入口依赖一个小型 helper MSIX由support/scripts/compile_windows_msix_helper.ps1通过 makepri 与 makeappx 打包生成。清单头部的注释提醒resources.pri中的资源映射名必须与AppxManifest.xml的 Identity Name 一致否则共享对话框会出现空白图标。准备商店提交时参照app/windows/install_msix_helper.ps1确认该辅助包的安装方式并在商店描述中如实说明。6. Microsoft Store 提交材料上传 Partner Center 前按此清单备齐材料MSIX 包第 5 节生成的商店版本x64 架构应用图标300x300 像素可由app/assets/img/下的 512 像素 logo 缩放裁切截图1366x768 或 1920x1080覆盖发送、接收、设备发现等核心界面数量与规格以 Partner Center 当前要求为准应用描述说明这是局域网文件传输工具并解释网络权限仅用于本地设备发现与传输隐私政策地址与技术支持联系方式版本号与清单Version保持一致例如1.18.2.0。上传后在 Partner Center 填写商店页面信息、设置免费定价与可用地区再提交认证。审核周期与具体认证细则以 Microsoft Partner Center 当前要求为准。7. 常见问题与修复方法故障现象可能原因处理方式msix:create报证书错误证书 CN 与清单 Publisher 不匹配对齐两处字段商店版不要传自有证书路径目标机器提示无法安装系统低于 10.0.19041.0升级系统或调整清单 MinVersion 后重新验证构建安装提示版本冲突同 Identity 版本未高于已安装版本提升清单 Version 与 pubspec 构建号后重打包签名失败PFX 密码错误、证书过期重新导出证书先跑signtool verify排查商店审核被拒描述未说明网络用途在描述中写明完全信任与局域网权限的具体用途8. 上线后的更新与观察发布新版本时同步提升app/pubspec.yaml的版本号如1.18.264改为1.18.365与清单中的Version然后完整重跑第 5 节流程。商店用户通过 Microsoft Store 自动收到更新推送直发用户则需随新包分发仓库内置的 CHANGELOG 会展示在应用内帮助其确认更新内容。上线后持续关注商店审核反馈与应用内错误报告问题在后续小版本中修复即可无需一次性追求完美。【免费下载链接】localsendAn open-source cross-platform alternative to AirDrop项目地址: https://gitcode.com/GitHub_Trending/lo/localsend创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考