Parcourir la source

Initial Commit

main
jasonsyf il y a 1 an
révision
3ed0eb13f7

+ 582
- 0
iOSFirst.xcodeproj/project.pbxproj Voir le fichier

@@ -0,0 +1,582 @@
1
+// !$*UTF8*$!
2
+{
3
+	archiveVersion = 1;
4
+	classes = {
5
+	};
6
+	objectVersion = 56;
7
+	objects = {
8
+
9
+/* Begin PBXBuildFile section */
10
+		8CF74C782988B097004A1694 /* iOSFirstApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF74C772988B097004A1694 /* iOSFirstApp.swift */; };
11
+		8CF74C7A2988B097004A1694 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF74C792988B097004A1694 /* ContentView.swift */; };
12
+		8CF74C7C2988B098004A1694 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8CF74C7B2988B098004A1694 /* Assets.xcassets */; };
13
+		8CF74C7F2988B098004A1694 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8CF74C7E2988B098004A1694 /* Preview Assets.xcassets */; };
14
+		8CF74C892988B098004A1694 /* iOSFirstTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF74C882988B098004A1694 /* iOSFirstTests.swift */; };
15
+		8CF74C932988B098004A1694 /* iOSFirstUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF74C922988B098004A1694 /* iOSFirstUITests.swift */; };
16
+		8CF74C952988B098004A1694 /* iOSFirstUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF74C942988B098004A1694 /* iOSFirstUITestsLaunchTests.swift */; };
17
+/* End PBXBuildFile section */
18
+
19
+/* Begin PBXContainerItemProxy section */
20
+		8CF74C852988B098004A1694 /* PBXContainerItemProxy */ = {
21
+			isa = PBXContainerItemProxy;
22
+			containerPortal = 8CF74C6C2988B097004A1694 /* Project object */;
23
+			proxyType = 1;
24
+			remoteGlobalIDString = 8CF74C732988B097004A1694;
25
+			remoteInfo = iOSFirst;
26
+		};
27
+		8CF74C8F2988B098004A1694 /* PBXContainerItemProxy */ = {
28
+			isa = PBXContainerItemProxy;
29
+			containerPortal = 8CF74C6C2988B097004A1694 /* Project object */;
30
+			proxyType = 1;
31
+			remoteGlobalIDString = 8CF74C732988B097004A1694;
32
+			remoteInfo = iOSFirst;
33
+		};
34
+/* End PBXContainerItemProxy section */
35
+
36
+/* Begin PBXFileReference section */
37
+		8CF74C742988B097004A1694 /* iOSFirst.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iOSFirst.app; sourceTree = BUILT_PRODUCTS_DIR; };
38
+		8CF74C772988B097004A1694 /* iOSFirstApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iOSFirstApp.swift; sourceTree = "<group>"; };
39
+		8CF74C792988B097004A1694 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
40
+		8CF74C7B2988B098004A1694 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
41
+		8CF74C7E2988B098004A1694 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
42
+		8CF74C842988B098004A1694 /* iOSFirstTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = iOSFirstTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
43
+		8CF74C882988B098004A1694 /* iOSFirstTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iOSFirstTests.swift; sourceTree = "<group>"; };
44
+		8CF74C8E2988B098004A1694 /* iOSFirstUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = iOSFirstUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
45
+		8CF74C922988B098004A1694 /* iOSFirstUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iOSFirstUITests.swift; sourceTree = "<group>"; };
46
+		8CF74C942988B098004A1694 /* iOSFirstUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iOSFirstUITestsLaunchTests.swift; sourceTree = "<group>"; };
47
+/* End PBXFileReference section */
48
+
49
+/* Begin PBXFrameworksBuildPhase section */
50
+		8CF74C712988B097004A1694 /* Frameworks */ = {
51
+			isa = PBXFrameworksBuildPhase;
52
+			buildActionMask = 2147483647;
53
+			files = (
54
+			);
55
+			runOnlyForDeploymentPostprocessing = 0;
56
+		};
57
+		8CF74C812988B098004A1694 /* Frameworks */ = {
58
+			isa = PBXFrameworksBuildPhase;
59
+			buildActionMask = 2147483647;
60
+			files = (
61
+			);
62
+			runOnlyForDeploymentPostprocessing = 0;
63
+		};
64
+		8CF74C8B2988B098004A1694 /* Frameworks */ = {
65
+			isa = PBXFrameworksBuildPhase;
66
+			buildActionMask = 2147483647;
67
+			files = (
68
+			);
69
+			runOnlyForDeploymentPostprocessing = 0;
70
+		};
71
+/* End PBXFrameworksBuildPhase section */
72
+
73
+/* Begin PBXGroup section */
74
+		8CF74C6B2988B097004A1694 = {
75
+			isa = PBXGroup;
76
+			children = (
77
+				8CF74C762988B097004A1694 /* iOSFirst */,
78
+				8CF74C872988B098004A1694 /* iOSFirstTests */,
79
+				8CF74C912988B098004A1694 /* iOSFirstUITests */,
80
+				8CF74C752988B097004A1694 /* Products */,
81
+			);
82
+			sourceTree = "<group>";
83
+		};
84
+		8CF74C752988B097004A1694 /* Products */ = {
85
+			isa = PBXGroup;
86
+			children = (
87
+				8CF74C742988B097004A1694 /* iOSFirst.app */,
88
+				8CF74C842988B098004A1694 /* iOSFirstTests.xctest */,
89
+				8CF74C8E2988B098004A1694 /* iOSFirstUITests.xctest */,
90
+			);
91
+			name = Products;
92
+			sourceTree = "<group>";
93
+		};
94
+		8CF74C762988B097004A1694 /* iOSFirst */ = {
95
+			isa = PBXGroup;
96
+			children = (
97
+				8CF74C772988B097004A1694 /* iOSFirstApp.swift */,
98
+				8CF74C792988B097004A1694 /* ContentView.swift */,
99
+				8CF74C7B2988B098004A1694 /* Assets.xcassets */,
100
+				8CF74C7D2988B098004A1694 /* Preview Content */,
101
+			);
102
+			path = iOSFirst;
103
+			sourceTree = "<group>";
104
+		};
105
+		8CF74C7D2988B098004A1694 /* Preview Content */ = {
106
+			isa = PBXGroup;
107
+			children = (
108
+				8CF74C7E2988B098004A1694 /* Preview Assets.xcassets */,
109
+			);
110
+			path = "Preview Content";
111
+			sourceTree = "<group>";
112
+		};
113
+		8CF74C872988B098004A1694 /* iOSFirstTests */ = {
114
+			isa = PBXGroup;
115
+			children = (
116
+				8CF74C882988B098004A1694 /* iOSFirstTests.swift */,
117
+			);
118
+			path = iOSFirstTests;
119
+			sourceTree = "<group>";
120
+		};
121
+		8CF74C912988B098004A1694 /* iOSFirstUITests */ = {
122
+			isa = PBXGroup;
123
+			children = (
124
+				8CF74C922988B098004A1694 /* iOSFirstUITests.swift */,
125
+				8CF74C942988B098004A1694 /* iOSFirstUITestsLaunchTests.swift */,
126
+			);
127
+			path = iOSFirstUITests;
128
+			sourceTree = "<group>";
129
+		};
130
+/* End PBXGroup section */
131
+
132
+/* Begin PBXNativeTarget section */
133
+		8CF74C732988B097004A1694 /* iOSFirst */ = {
134
+			isa = PBXNativeTarget;
135
+			buildConfigurationList = 8CF74C982988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirst" */;
136
+			buildPhases = (
137
+				8CF74C702988B097004A1694 /* Sources */,
138
+				8CF74C712988B097004A1694 /* Frameworks */,
139
+				8CF74C722988B097004A1694 /* Resources */,
140
+			);
141
+			buildRules = (
142
+			);
143
+			dependencies = (
144
+			);
145
+			name = iOSFirst;
146
+			productName = iOSFirst;
147
+			productReference = 8CF74C742988B097004A1694 /* iOSFirst.app */;
148
+			productType = "com.apple.product-type.application";
149
+		};
150
+		8CF74C832988B098004A1694 /* iOSFirstTests */ = {
151
+			isa = PBXNativeTarget;
152
+			buildConfigurationList = 8CF74C9B2988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirstTests" */;
153
+			buildPhases = (
154
+				8CF74C802988B098004A1694 /* Sources */,
155
+				8CF74C812988B098004A1694 /* Frameworks */,
156
+				8CF74C822988B098004A1694 /* Resources */,
157
+			);
158
+			buildRules = (
159
+			);
160
+			dependencies = (
161
+				8CF74C862988B098004A1694 /* PBXTargetDependency */,
162
+			);
163
+			name = iOSFirstTests;
164
+			productName = iOSFirstTests;
165
+			productReference = 8CF74C842988B098004A1694 /* iOSFirstTests.xctest */;
166
+			productType = "com.apple.product-type.bundle.unit-test";
167
+		};
168
+		8CF74C8D2988B098004A1694 /* iOSFirstUITests */ = {
169
+			isa = PBXNativeTarget;
170
+			buildConfigurationList = 8CF74C9E2988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirstUITests" */;
171
+			buildPhases = (
172
+				8CF74C8A2988B098004A1694 /* Sources */,
173
+				8CF74C8B2988B098004A1694 /* Frameworks */,
174
+				8CF74C8C2988B098004A1694 /* Resources */,
175
+			);
176
+			buildRules = (
177
+			);
178
+			dependencies = (
179
+				8CF74C902988B098004A1694 /* PBXTargetDependency */,
180
+			);
181
+			name = iOSFirstUITests;
182
+			productName = iOSFirstUITests;
183
+			productReference = 8CF74C8E2988B098004A1694 /* iOSFirstUITests.xctest */;
184
+			productType = "com.apple.product-type.bundle.ui-testing";
185
+		};
186
+/* End PBXNativeTarget section */
187
+
188
+/* Begin PBXProject section */
189
+		8CF74C6C2988B097004A1694 /* Project object */ = {
190
+			isa = PBXProject;
191
+			attributes = {
192
+				BuildIndependentTargetsInParallel = 1;
193
+				LastSwiftUpdateCheck = 1420;
194
+				LastUpgradeCheck = 1420;
195
+				TargetAttributes = {
196
+					8CF74C732988B097004A1694 = {
197
+						CreatedOnToolsVersion = 14.2;
198
+					};
199
+					8CF74C832988B098004A1694 = {
200
+						CreatedOnToolsVersion = 14.2;
201
+						TestTargetID = 8CF74C732988B097004A1694;
202
+					};
203
+					8CF74C8D2988B098004A1694 = {
204
+						CreatedOnToolsVersion = 14.2;
205
+						TestTargetID = 8CF74C732988B097004A1694;
206
+					};
207
+				};
208
+			};
209
+			buildConfigurationList = 8CF74C6F2988B097004A1694 /* Build configuration list for PBXProject "iOSFirst" */;
210
+			compatibilityVersion = "Xcode 14.0";
211
+			developmentRegion = en;
212
+			hasScannedForEncodings = 0;
213
+			knownRegions = (
214
+				en,
215
+				Base,
216
+			);
217
+			mainGroup = 8CF74C6B2988B097004A1694;
218
+			productRefGroup = 8CF74C752988B097004A1694 /* Products */;
219
+			projectDirPath = "";
220
+			projectRoot = "";
221
+			targets = (
222
+				8CF74C732988B097004A1694 /* iOSFirst */,
223
+				8CF74C832988B098004A1694 /* iOSFirstTests */,
224
+				8CF74C8D2988B098004A1694 /* iOSFirstUITests */,
225
+			);
226
+		};
227
+/* End PBXProject section */
228
+
229
+/* Begin PBXResourcesBuildPhase section */
230
+		8CF74C722988B097004A1694 /* Resources */ = {
231
+			isa = PBXResourcesBuildPhase;
232
+			buildActionMask = 2147483647;
233
+			files = (
234
+				8CF74C7F2988B098004A1694 /* Preview Assets.xcassets in Resources */,
235
+				8CF74C7C2988B098004A1694 /* Assets.xcassets in Resources */,
236
+			);
237
+			runOnlyForDeploymentPostprocessing = 0;
238
+		};
239
+		8CF74C822988B098004A1694 /* Resources */ = {
240
+			isa = PBXResourcesBuildPhase;
241
+			buildActionMask = 2147483647;
242
+			files = (
243
+			);
244
+			runOnlyForDeploymentPostprocessing = 0;
245
+		};
246
+		8CF74C8C2988B098004A1694 /* Resources */ = {
247
+			isa = PBXResourcesBuildPhase;
248
+			buildActionMask = 2147483647;
249
+			files = (
250
+			);
251
+			runOnlyForDeploymentPostprocessing = 0;
252
+		};
253
+/* End PBXResourcesBuildPhase section */
254
+
255
+/* Begin PBXSourcesBuildPhase section */
256
+		8CF74C702988B097004A1694 /* Sources */ = {
257
+			isa = PBXSourcesBuildPhase;
258
+			buildActionMask = 2147483647;
259
+			files = (
260
+				8CF74C7A2988B097004A1694 /* ContentView.swift in Sources */,
261
+				8CF74C782988B097004A1694 /* iOSFirstApp.swift in Sources */,
262
+			);
263
+			runOnlyForDeploymentPostprocessing = 0;
264
+		};
265
+		8CF74C802988B098004A1694 /* Sources */ = {
266
+			isa = PBXSourcesBuildPhase;
267
+			buildActionMask = 2147483647;
268
+			files = (
269
+				8CF74C892988B098004A1694 /* iOSFirstTests.swift in Sources */,
270
+			);
271
+			runOnlyForDeploymentPostprocessing = 0;
272
+		};
273
+		8CF74C8A2988B098004A1694 /* Sources */ = {
274
+			isa = PBXSourcesBuildPhase;
275
+			buildActionMask = 2147483647;
276
+			files = (
277
+				8CF74C952988B098004A1694 /* iOSFirstUITestsLaunchTests.swift in Sources */,
278
+				8CF74C932988B098004A1694 /* iOSFirstUITests.swift in Sources */,
279
+			);
280
+			runOnlyForDeploymentPostprocessing = 0;
281
+		};
282
+/* End PBXSourcesBuildPhase section */
283
+
284
+/* Begin PBXTargetDependency section */
285
+		8CF74C862988B098004A1694 /* PBXTargetDependency */ = {
286
+			isa = PBXTargetDependency;
287
+			target = 8CF74C732988B097004A1694 /* iOSFirst */;
288
+			targetProxy = 8CF74C852988B098004A1694 /* PBXContainerItemProxy */;
289
+		};
290
+		8CF74C902988B098004A1694 /* PBXTargetDependency */ = {
291
+			isa = PBXTargetDependency;
292
+			target = 8CF74C732988B097004A1694 /* iOSFirst */;
293
+			targetProxy = 8CF74C8F2988B098004A1694 /* PBXContainerItemProxy */;
294
+		};
295
+/* End PBXTargetDependency section */
296
+
297
+/* Begin XCBuildConfiguration section */
298
+		8CF74C962988B098004A1694 /* Debug */ = {
299
+			isa = XCBuildConfiguration;
300
+			buildSettings = {
301
+				ALWAYS_SEARCH_USER_PATHS = NO;
302
+				CLANG_ANALYZER_NONNULL = YES;
303
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
304
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
305
+				CLANG_ENABLE_MODULES = YES;
306
+				CLANG_ENABLE_OBJC_ARC = YES;
307
+				CLANG_ENABLE_OBJC_WEAK = YES;
308
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
309
+				CLANG_WARN_BOOL_CONVERSION = YES;
310
+				CLANG_WARN_COMMA = YES;
311
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
312
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
313
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
314
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
315
+				CLANG_WARN_EMPTY_BODY = YES;
316
+				CLANG_WARN_ENUM_CONVERSION = YES;
317
+				CLANG_WARN_INFINITE_RECURSION = YES;
318
+				CLANG_WARN_INT_CONVERSION = YES;
319
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
320
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
321
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
322
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
323
+				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
324
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
325
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
326
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
327
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
328
+				CLANG_WARN_UNREACHABLE_CODE = YES;
329
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
330
+				COPY_PHASE_STRIP = NO;
331
+				DEBUG_INFORMATION_FORMAT = dwarf;
332
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
333
+				ENABLE_TESTABILITY = YES;
334
+				GCC_C_LANGUAGE_STANDARD = gnu11;
335
+				GCC_DYNAMIC_NO_PIC = NO;
336
+				GCC_NO_COMMON_BLOCKS = YES;
337
+				GCC_OPTIMIZATION_LEVEL = 0;
338
+				GCC_PREPROCESSOR_DEFINITIONS = (
339
+					"DEBUG=1",
340
+					"$(inherited)",
341
+				);
342
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
343
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
344
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
345
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
346
+				GCC_WARN_UNUSED_FUNCTION = YES;
347
+				GCC_WARN_UNUSED_VARIABLE = YES;
348
+				IPHONEOS_DEPLOYMENT_TARGET = 16.2;
349
+				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
350
+				MTL_FAST_MATH = YES;
351
+				ONLY_ACTIVE_ARCH = YES;
352
+				SDKROOT = iphoneos;
353
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
354
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
355
+			};
356
+			name = Debug;
357
+		};
358
+		8CF74C972988B098004A1694 /* Release */ = {
359
+			isa = XCBuildConfiguration;
360
+			buildSettings = {
361
+				ALWAYS_SEARCH_USER_PATHS = NO;
362
+				CLANG_ANALYZER_NONNULL = YES;
363
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
364
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
365
+				CLANG_ENABLE_MODULES = YES;
366
+				CLANG_ENABLE_OBJC_ARC = YES;
367
+				CLANG_ENABLE_OBJC_WEAK = YES;
368
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
369
+				CLANG_WARN_BOOL_CONVERSION = YES;
370
+				CLANG_WARN_COMMA = YES;
371
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
372
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
373
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
374
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
375
+				CLANG_WARN_EMPTY_BODY = YES;
376
+				CLANG_WARN_ENUM_CONVERSION = YES;
377
+				CLANG_WARN_INFINITE_RECURSION = YES;
378
+				CLANG_WARN_INT_CONVERSION = YES;
379
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
380
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
381
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
382
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
383
+				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
384
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
385
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
386
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
387
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
388
+				CLANG_WARN_UNREACHABLE_CODE = YES;
389
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
390
+				COPY_PHASE_STRIP = NO;
391
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
392
+				ENABLE_NS_ASSERTIONS = NO;
393
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
394
+				GCC_C_LANGUAGE_STANDARD = gnu11;
395
+				GCC_NO_COMMON_BLOCKS = YES;
396
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
397
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
398
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
399
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
400
+				GCC_WARN_UNUSED_FUNCTION = YES;
401
+				GCC_WARN_UNUSED_VARIABLE = YES;
402
+				IPHONEOS_DEPLOYMENT_TARGET = 16.2;
403
+				MTL_ENABLE_DEBUG_INFO = NO;
404
+				MTL_FAST_MATH = YES;
405
+				SDKROOT = iphoneos;
406
+				SWIFT_COMPILATION_MODE = wholemodule;
407
+				SWIFT_OPTIMIZATION_LEVEL = "-O";
408
+				VALIDATE_PRODUCT = YES;
409
+			};
410
+			name = Release;
411
+		};
412
+		8CF74C992988B098004A1694 /* Debug */ = {
413
+			isa = XCBuildConfiguration;
414
+			buildSettings = {
415
+				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
416
+				ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
417
+				CODE_SIGN_STYLE = Automatic;
418
+				CURRENT_PROJECT_VERSION = 1;
419
+				DEVELOPMENT_ASSET_PATHS = "\"iOSFirst/Preview Content\"";
420
+				ENABLE_PREVIEWS = YES;
421
+				GENERATE_INFOPLIST_FILE = YES;
422
+				INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
423
+				INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
424
+				INFOPLIST_KEY_UILaunchScreen_Generation = YES;
425
+				INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
426
+				INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
427
+				LD_RUNPATH_SEARCH_PATHS = (
428
+					"$(inherited)",
429
+					"@executable_path/Frameworks",
430
+				);
431
+				MARKETING_VERSION = 1.0;
432
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirst;
433
+				PRODUCT_NAME = "$(TARGET_NAME)";
434
+				SWIFT_EMIT_LOC_STRINGS = YES;
435
+				SWIFT_VERSION = 5.0;
436
+				TARGETED_DEVICE_FAMILY = "1,2";
437
+			};
438
+			name = Debug;
439
+		};
440
+		8CF74C9A2988B098004A1694 /* Release */ = {
441
+			isa = XCBuildConfiguration;
442
+			buildSettings = {
443
+				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
444
+				ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
445
+				CODE_SIGN_STYLE = Automatic;
446
+				CURRENT_PROJECT_VERSION = 1;
447
+				DEVELOPMENT_ASSET_PATHS = "\"iOSFirst/Preview Content\"";
448
+				ENABLE_PREVIEWS = YES;
449
+				GENERATE_INFOPLIST_FILE = YES;
450
+				INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
451
+				INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
452
+				INFOPLIST_KEY_UILaunchScreen_Generation = YES;
453
+				INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
454
+				INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
455
+				LD_RUNPATH_SEARCH_PATHS = (
456
+					"$(inherited)",
457
+					"@executable_path/Frameworks",
458
+				);
459
+				MARKETING_VERSION = 1.0;
460
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirst;
461
+				PRODUCT_NAME = "$(TARGET_NAME)";
462
+				SWIFT_EMIT_LOC_STRINGS = YES;
463
+				SWIFT_VERSION = 5.0;
464
+				TARGETED_DEVICE_FAMILY = "1,2";
465
+			};
466
+			name = Release;
467
+		};
468
+		8CF74C9C2988B098004A1694 /* Debug */ = {
469
+			isa = XCBuildConfiguration;
470
+			buildSettings = {
471
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
472
+				BUNDLE_LOADER = "$(TEST_HOST)";
473
+				CODE_SIGN_STYLE = Automatic;
474
+				CURRENT_PROJECT_VERSION = 1;
475
+				GENERATE_INFOPLIST_FILE = YES;
476
+				IPHONEOS_DEPLOYMENT_TARGET = 16.2;
477
+				MARKETING_VERSION = 1.0;
478
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirstTests;
479
+				PRODUCT_NAME = "$(TARGET_NAME)";
480
+				SWIFT_EMIT_LOC_STRINGS = NO;
481
+				SWIFT_VERSION = 5.0;
482
+				TARGETED_DEVICE_FAMILY = "1,2";
483
+				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/iOSFirst.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/iOSFirst";
484
+			};
485
+			name = Debug;
486
+		};
487
+		8CF74C9D2988B098004A1694 /* Release */ = {
488
+			isa = XCBuildConfiguration;
489
+			buildSettings = {
490
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
491
+				BUNDLE_LOADER = "$(TEST_HOST)";
492
+				CODE_SIGN_STYLE = Automatic;
493
+				CURRENT_PROJECT_VERSION = 1;
494
+				GENERATE_INFOPLIST_FILE = YES;
495
+				IPHONEOS_DEPLOYMENT_TARGET = 16.2;
496
+				MARKETING_VERSION = 1.0;
497
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirstTests;
498
+				PRODUCT_NAME = "$(TARGET_NAME)";
499
+				SWIFT_EMIT_LOC_STRINGS = NO;
500
+				SWIFT_VERSION = 5.0;
501
+				TARGETED_DEVICE_FAMILY = "1,2";
502
+				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/iOSFirst.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/iOSFirst";
503
+			};
504
+			name = Release;
505
+		};
506
+		8CF74C9F2988B098004A1694 /* Debug */ = {
507
+			isa = XCBuildConfiguration;
508
+			buildSettings = {
509
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
510
+				CODE_SIGN_STYLE = Automatic;
511
+				CURRENT_PROJECT_VERSION = 1;
512
+				GENERATE_INFOPLIST_FILE = YES;
513
+				MARKETING_VERSION = 1.0;
514
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirstUITests;
515
+				PRODUCT_NAME = "$(TARGET_NAME)";
516
+				SWIFT_EMIT_LOC_STRINGS = NO;
517
+				SWIFT_VERSION = 5.0;
518
+				TARGETED_DEVICE_FAMILY = "1,2";
519
+				TEST_TARGET_NAME = iOSFirst;
520
+			};
521
+			name = Debug;
522
+		};
523
+		8CF74CA02988B098004A1694 /* Release */ = {
524
+			isa = XCBuildConfiguration;
525
+			buildSettings = {
526
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
527
+				CODE_SIGN_STYLE = Automatic;
528
+				CURRENT_PROJECT_VERSION = 1;
529
+				GENERATE_INFOPLIST_FILE = YES;
530
+				MARKETING_VERSION = 1.0;
531
+				PRODUCT_BUNDLE_IDENTIFIER = com.syf.iOSFirstUITests;
532
+				PRODUCT_NAME = "$(TARGET_NAME)";
533
+				SWIFT_EMIT_LOC_STRINGS = NO;
534
+				SWIFT_VERSION = 5.0;
535
+				TARGETED_DEVICE_FAMILY = "1,2";
536
+				TEST_TARGET_NAME = iOSFirst;
537
+			};
538
+			name = Release;
539
+		};
540
+/* End XCBuildConfiguration section */
541
+
542
+/* Begin XCConfigurationList section */
543
+		8CF74C6F2988B097004A1694 /* Build configuration list for PBXProject "iOSFirst" */ = {
544
+			isa = XCConfigurationList;
545
+			buildConfigurations = (
546
+				8CF74C962988B098004A1694 /* Debug */,
547
+				8CF74C972988B098004A1694 /* Release */,
548
+			);
549
+			defaultConfigurationIsVisible = 0;
550
+			defaultConfigurationName = Release;
551
+		};
552
+		8CF74C982988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirst" */ = {
553
+			isa = XCConfigurationList;
554
+			buildConfigurations = (
555
+				8CF74C992988B098004A1694 /* Debug */,
556
+				8CF74C9A2988B098004A1694 /* Release */,
557
+			);
558
+			defaultConfigurationIsVisible = 0;
559
+			defaultConfigurationName = Release;
560
+		};
561
+		8CF74C9B2988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirstTests" */ = {
562
+			isa = XCConfigurationList;
563
+			buildConfigurations = (
564
+				8CF74C9C2988B098004A1694 /* Debug */,
565
+				8CF74C9D2988B098004A1694 /* Release */,
566
+			);
567
+			defaultConfigurationIsVisible = 0;
568
+			defaultConfigurationName = Release;
569
+		};
570
+		8CF74C9E2988B098004A1694 /* Build configuration list for PBXNativeTarget "iOSFirstUITests" */ = {
571
+			isa = XCConfigurationList;
572
+			buildConfigurations = (
573
+				8CF74C9F2988B098004A1694 /* Debug */,
574
+				8CF74CA02988B098004A1694 /* Release */,
575
+			);
576
+			defaultConfigurationIsVisible = 0;
577
+			defaultConfigurationName = Release;
578
+		};
579
+/* End XCConfigurationList section */
580
+	};
581
+	rootObject = 8CF74C6C2988B097004A1694 /* Project object */;
582
+}

+ 7
- 0
iOSFirst.xcodeproj/project.xcworkspace/contents.xcworkspacedata Voir le fichier

@@ -0,0 +1,7 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<Workspace
3
+   version = "1.0">
4
+   <FileRef
5
+      location = "self:">
6
+   </FileRef>
7
+</Workspace>

+ 8
- 0
iOSFirst.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist Voir le fichier

@@ -0,0 +1,8 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+<plist version="1.0">
4
+<dict>
5
+	<key>IDEDidComputeMac32BitWarning</key>
6
+	<true/>
7
+</dict>
8
+</plist>

+ 14
- 0
iOSFirst.xcodeproj/xcuserdata/sunyufeng.xcuserdatad/xcschemes/xcschememanagement.plist Voir le fichier

@@ -0,0 +1,14 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+<plist version="1.0">
4
+<dict>
5
+	<key>SchemeUserState</key>
6
+	<dict>
7
+		<key>iOSFirst.xcscheme_^#shared#^_</key>
8
+		<dict>
9
+			<key>orderHint</key>
10
+			<integer>0</integer>
11
+		</dict>
12
+	</dict>
13
+</dict>
14
+</plist>

+ 11
- 0
iOSFirst/Assets.xcassets/AccentColor.colorset/Contents.json Voir le fichier

@@ -0,0 +1,11 @@
1
+{
2
+  "colors" : [
3
+    {
4
+      "idiom" : "universal"
5
+    }
6
+  ],
7
+  "info" : {
8
+    "author" : "xcode",
9
+    "version" : 1
10
+  }
11
+}

+ 13
- 0
iOSFirst/Assets.xcassets/AppIcon.appiconset/Contents.json Voir le fichier

@@ -0,0 +1,13 @@
1
+{
2
+  "images" : [
3
+    {
4
+      "idiom" : "universal",
5
+      "platform" : "ios",
6
+      "size" : "1024x1024"
7
+    }
8
+  ],
9
+  "info" : {
10
+    "author" : "xcode",
11
+    "version" : 1
12
+  }
13
+}

+ 6
- 0
iOSFirst/Assets.xcassets/Contents.json Voir le fichier

@@ -0,0 +1,6 @@
1
+{
2
+  "info" : {
3
+    "author" : "xcode",
4
+    "version" : 1
5
+  }
6
+}

+ 26
- 0
iOSFirst/ContentView.swift Voir le fichier

@@ -0,0 +1,26 @@
1
+//
2
+//  ContentView.swift
3
+//  iOSFirst
4
+//
5
+//  Created by 孙宇峰 on 2023/1/31.
6
+//
7
+
8
+import SwiftUI
9
+
10
+struct ContentView: View {
11
+    var body: some View {
12
+        VStack {
13
+            Image(systemName: "globe")
14
+                .imageScale(.large)
15
+                .foregroundColor(.accentColor)
16
+            Text("Hello, world!")
17
+        }
18
+        .padding()
19
+    }
20
+}
21
+
22
+struct ContentView_Previews: PreviewProvider {
23
+    static var previews: some View {
24
+        ContentView()
25
+    }
26
+}

+ 6
- 0
iOSFirst/Preview Content/Preview Assets.xcassets/Contents.json Voir le fichier

@@ -0,0 +1,6 @@
1
+{
2
+  "info" : {
3
+    "author" : "xcode",
4
+    "version" : 1
5
+  }
6
+}

+ 17
- 0
iOSFirst/iOSFirstApp.swift Voir le fichier

@@ -0,0 +1,17 @@
1
+//
2
+//  iOSFirstApp.swift
3
+//  iOSFirst
4
+//
5
+//  Created by 孙宇峰 on 2023/1/31.
6
+//
7
+
8
+import SwiftUI
9
+
10
+@main
11
+struct iOSFirstApp: App {
12
+    var body: some Scene {
13
+        WindowGroup {
14
+            ContentView()
15
+        }
16
+    }
17
+}

+ 36
- 0
iOSFirstTests/iOSFirstTests.swift Voir le fichier

@@ -0,0 +1,36 @@
1
+//
2
+//  iOSFirstTests.swift
3
+//  iOSFirstTests
4
+//
5
+//  Created by 孙宇峰 on 2023/1/31.
6
+//
7
+
8
+import XCTest
9
+@testable import iOSFirst
10
+
11
+final class iOSFirstTests: XCTestCase {
12
+
13
+    override func setUpWithError() throws {
14
+        // Put setup code here. This method is called before the invocation of each test method in the class.
15
+    }
16
+
17
+    override func tearDownWithError() throws {
18
+        // Put teardown code here. This method is called after the invocation of each test method in the class.
19
+    }
20
+
21
+    func testExample() throws {
22
+        // This is an example of a functional test case.
23
+        // Use XCTAssert and related functions to verify your tests produce the correct results.
24
+        // Any test you write for XCTest can be annotated as throws and async.
25
+        // Mark your test throws to produce an unexpected failure when your test encounters an uncaught error.
26
+        // Mark your test async to allow awaiting for asynchronous code to complete. Check the results with assertions afterwards.
27
+    }
28
+
29
+    func testPerformanceExample() throws {
30
+        // This is an example of a performance test case.
31
+        self.measure {
32
+            // Put the code you want to measure the time of here.
33
+        }
34
+    }
35
+
36
+}

+ 41
- 0
iOSFirstUITests/iOSFirstUITests.swift Voir le fichier

@@ -0,0 +1,41 @@
1
+//
2
+//  iOSFirstUITests.swift
3
+//  iOSFirstUITests
4
+//
5
+//  Created by 孙宇峰 on 2023/1/31.
6
+//
7
+
8
+import XCTest
9
+
10
+final class iOSFirstUITests: XCTestCase {
11
+
12
+    override func setUpWithError() throws {
13
+        // Put setup code here. This method is called before the invocation of each test method in the class.
14
+
15
+        // In UI tests it is usually best to stop immediately when a failure occurs.
16
+        continueAfterFailure = false
17
+
18
+        // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this.
19
+    }
20
+
21
+    override func tearDownWithError() throws {
22
+        // Put teardown code here. This method is called after the invocation of each test method in the class.
23
+    }
24
+
25
+    func testExample() throws {
26
+        // UI tests must launch the application that they test.
27
+        let app = XCUIApplication()
28
+        app.launch()
29
+
30
+        // Use XCTAssert and related functions to verify your tests produce the correct results.
31
+    }
32
+
33
+    func testLaunchPerformance() throws {
34
+        if #available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 7.0, *) {
35
+            // This measures how long it takes to launch your application.
36
+            measure(metrics: [XCTApplicationLaunchMetric()]) {
37
+                XCUIApplication().launch()
38
+            }
39
+        }
40
+    }
41
+}

+ 32
- 0
iOSFirstUITests/iOSFirstUITestsLaunchTests.swift Voir le fichier

@@ -0,0 +1,32 @@
1
+//
2
+//  iOSFirstUITestsLaunchTests.swift
3
+//  iOSFirstUITests
4
+//
5
+//  Created by 孙宇峰 on 2023/1/31.
6
+//
7
+
8
+import XCTest
9
+
10
+final class iOSFirstUITestsLaunchTests: XCTestCase {
11
+
12
+    override class var runsForEachTargetApplicationUIConfiguration: Bool {
13
+        true
14
+    }
15
+
16
+    override func setUpWithError() throws {
17
+        continueAfterFailure = false
18
+    }
19
+
20
+    func testLaunch() throws {
21
+        let app = XCUIApplication()
22
+        app.launch()
23
+
24
+        // Insert steps here to perform after app launch but before taking a screenshot,
25
+        // such as logging into a test account or navigating somewhere in the app
26
+
27
+        let attachment = XCTAttachment(screenshot: app.screenshot())
28
+        attachment.name = "Launch Screen"
29
+        attachment.lifetime = .keepAlways
30
+        add(attachment)
31
+    }
32
+}

Chargement…
Annuler
Enregistrer