feat: Shared Scheme + StoreKit Configuration (Test Action 需 Xcode)

- xcshareddata/xcschemes/AIStudyApp.xcscheme (Shared)
- LaunchAction 引用 Products.storekit (本地 StoreKit 测试)
- Products.storekit: Premium Monthly(28 CNY) + Yearly(198 CNY)
- Build/Launch/Profile/Archive 全部就绪

Test Target 添加步骤(Xcode GUI, 2 分钟):
  1. File → New → Target → Unit Testing Bundle → AIStudyAppTests
  2. 移除自动生成的 AIStudyAppTests.swift
  3. 在 Build Phases → Compile Sources 添加 AIStudyAppTests/ 下 28 个文件
  4. Edit Scheme → Test → + → AIStudyAppTests
  5. Test Action → Options → StoreKit Configuration = Products.storekit

注: pbxproj objectVersion=77 使用文件系统同步组,无法通过 CLI 安全添加 Target
This commit is contained in:
wangdl 2026-06-27 13:53:25 +08:00
parent f2f2d8b8ac
commit eb7228c725

View File

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "2600"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES"
buildArchitectures = "Automatic">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "05F6CD1A2FA886330043A7BC"
BuildableName = "AIStudyApp.app"
BlueprintName = "AIStudyApp"
ReferencedContainer = "container:AIStudyApp.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
enableAddressSanitizer = "NO"
enableThreadSanitizer = "NO"
enableUBSanitizer = "NO"
disableMainThreadChecker = "NO">
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<StoreKitConfigurationFileReference
identifier = "Products.storekit">
</StoreKitConfigurationFileReference>
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "05F6CD1A2FA886330043A7BC"
BuildableName = "AIStudyApp.app"
BlueprintName = "AIStudyApp"
ReferencedContainer = "container:AIStudyApp.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "05F6CD1A2FA886330043A7BC"
BuildableName = "AIStudyApp.app"
BlueprintName = "AIStudyApp"
ReferencedContainer = "container:AIStudyApp.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>