Phase 1.4:引入 ZIPFoundation SPM 依赖(v0.9.20)

ResourceUnzipper(Phase 1.5)的前置:用 ZIPFoundation 替代旧 ZipArchive
解压 gamehall.zip。ADR-006 纯 SPM + Vendor 策略下的首个 SPM 依赖。

- 引入:https://github.com/weichsel/ZIPFoundation
  - 版本 0.9.20(Up to Next Major,commit 22787ffb59de)
  - License: MIT;纯 Swift 实现,Xcode 26 原生兼容
  - 链接到 target ylgamehall
- pbxproj:XCRemoteSwiftPackageReference + XCSwiftPackageProductDependency
  写入;Package.resolved 锁定版本,多机 / CI 复现
- BuildProject 通过;ZIPFoundation 全部 .swift 由 SwiftCompile 实际
  参与构建,与 ylgamehall target 链接完成
- 附带:ChannelConfig.plist 移除内联说明注释(Phase 1.1 commit 后由
  维护者整理),不影响 plist 数据结构
This commit is contained in:
joywayer
2026-06-21 23:56:32 +08:00
parent 730574a2e2
commit b866ee212c
3 changed files with 43 additions and 11 deletions
+28
View File
@@ -6,6 +6,10 @@
objectVersion = 77;
objects = {
/* Begin PBXBuildFile section */
1A2954622FE840DA009E703E /* ZIPFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 1A2954612FE840DA009E703E /* ZIPFoundation */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
1A714BD22FE8047A00913338 /* ylgamehall.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ylgamehall.app; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@@ -36,6 +40,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
1A2954622FE840DA009E703E /* ZIPFoundation in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -78,6 +83,7 @@
);
name = ylgamehall;
packageProductDependencies = (
1A2954612FE840DA009E703E /* ZIPFoundation */,
);
productName = ylgamehall;
productReference = 1A714BD22FE8047A00913338 /* ylgamehall.app */;
@@ -107,6 +113,9 @@
);
mainGroup = 1A714BC92FE8047A00913338;
minimizedProjectReferenceProxies = 1;
packageReferences = (
1A2954602FE840DA009E703E /* XCRemoteSwiftPackageReference "ZIPFoundation" */,
);
preferredProjectObjectVersion = 77;
productRefGroup = 1A714BD32FE8047A00913338 /* Products */;
projectDirPath = "";
@@ -347,6 +356,25 @@
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
1A2954602FE840DA009E703E /* XCRemoteSwiftPackageReference "ZIPFoundation" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/weichsel/ZIPFoundation";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.9.20;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
1A2954612FE840DA009E703E /* ZIPFoundation */ = {
isa = XCSwiftPackageProductDependency;
package = 1A2954602FE840DA009E703E /* XCRemoteSwiftPackageReference "ZIPFoundation" */;
productName = ZIPFoundation;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = 1A714BCA2FE8047A00913338 /* Project object */;
}
@@ -0,0 +1,15 @@
{
"originHash" : "d0d4edfdf2bf3cd05b3ba2dec0af1a9c271c93f944cbba8677cc647f74a6b323",
"pins" : [
{
"identity" : "zipfoundation",
"kind" : "remoteSourceControl",
"location" : "https://github.com/weichsel/ZIPFoundation",
"state" : {
"revision" : "22787ffb59de99e5dc1fbfe80b19c97a904ad48d",
"version" : "0.9.20"
}
}
],
"version" : 3
}
-11
View File
@@ -2,37 +2,26 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- 渠道注入配置母包默认值(沿用 msext 现网)。详见 docs/H5-Native-Implementation-Design.md §7 / Development-Plan.md ADR-007。多渠道分发由 IPA 后处理脚本用 plutil 改本 plist + 重签实现,不重新 Xcode build。 -->
<key>qiniudomain</key>
<string>iosaudio.daoqi88.cn</string>
<key>gameid</key>
<string>G2hw0ubng0zcoI0r4mx3H2yr4GejidwO</string>
<key>channel</key>
<string>FtJf073aa0d6rI1xD8J1Y42fINTm0ziK</string>
<key>gamedir</key>
<string>FtJf073aa0d6rI1xD8J1Y42fINTm0ziK</string>
<key>gamestart</key>
<string>gamehall</string>
<key>gameconfig</key>
<string>tsgames.daoqi88.cn-config_test-update_jsonv2_test</string>
<key>market</key>
<string>2</string>
<key>agent</key>
<string>veRa0qrBf0df2K1G4de2tgfmVxB2jxpv</string>
<key>appversion</key>
<string>43</string>
<key>other</key>
<string></string>
<key>appleconfig</key>
<string></string>
</dict>