Skip to content
This repository was archived by the owner on Jun 24, 2024. It is now read-only.

Commit 670236c

Browse files
authored
Merge pull request #459 from parjohns/patch-4
10224.md
2 parents 63ebc5e + f0940b9 commit 670236c

File tree

2 files changed

+71
-0
lines changed

2 files changed

+71
-0
lines changed

content/notes/wwdc23/10224.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
contributors: parjohns
3+
---
4+
5+
# Simplify Distribution in Xcode and Xcode Cloud
6+
7+
## Distribution Tools
8+
Methods for building and sharing your app
9+
10+
### Xcode Organizer Window
11+
Provides streamlined one-click distribution options
12+
13+
### Xcode Cloud Workflow
14+
Provides the ability to create a workflow to automate the building and sharing of an app
15+
16+
## Express TestFlight Distribution
17+
18+
### Archives
19+
The first step to distribution is to create an archive. An archive:
20+
- Is a record of the app build
21+
- Contains an optimized release build
22+
- Contains debug symbols (.dSYM)
23+
- Has its contents repackaged when uploading
24+
- Has an `.xcarchive` extension
25+
26+
Creating an archive can be done by going to the Product menu in Xcode and selecting Archive. When the archive is created, it can be found in the Organizer menu (Window > Organizer).
27+
From there, the archive can be distributed by clicking the "Distribute App" button. Xcode 15 has added new streamlined options
28+
![options][options]
29+
30+
[options]: ../../../images/notes/wwdc23/10224/1streamline.JPG
31+
32+
These options include:
33+
- TestFlight & App Store - has the full capabilities of TestFlight and allow App Store submission
34+
- TestFlight internal only - can be shared with team but does not allow App Store submission
35+
- Debugging - an optimized build that can be installed on registered devices
36+
- Release - similar to debug build but signed with distribution certificate
37+
- Custom - allows for configuration of settings
38+
39+
The streamlined options come with the recommended settings. The settings include:
40+
- Automatic signing
41+
- Symbols for crash reports
42+
- Auto-incrementing build number
43+
- Strips Swift symbols
44+
45+
Once the app has been distributed, it will be available to see on App Store Connect. Test Flight users will be able to see details about the new build on their device. Users can also share feedback about the build, which is available to see inside the Feedback tab on Xcode Organizer.
46+
47+
### Xcode Cloud
48+
Xcode Cloud is the Continuous Integration and Delivery service built by Apple. In the presentation, a workflow is created that will share a build with the team when new features are added. This is done by doing the following:
49+
1. Going to the menu Integrate > Create Workflow or Integrate > Manage Workflow if one is already created
50+
2. Edit the Archive action to add TestFlight (Internal Testing Only)
51+
3. Add a TestFlight Internal Testing post-action to add a TestFlight group
52+
53+
Xcode Cloud can automatically update the notes for what to test. More information about this can be found here:
54+
55+
https://developer.apple.com/documentation/Xcode/including-notes-for-testers-with-a-beta-release-of-your-app
56+
57+
## Automating Notarization
58+
Notarization is the process by which Apple verifies software. This allows developers to directly distribute their Mac application to users while giving them confidence that it is safe.
59+
60+
The notirization process is as follows:
61+
1. An archive is created for the app and uploaded to Apple's Notary Service
62+
2. The Notary Service scans the app for malicious content
63+
3. A ticket is provided that can be stapled to the app
64+
4. The app is distributed to customers
65+
5. When the app is launched for the first time, it will verify the stapled ticket and a ticket provided by the Notary Service
66+
67+
More information about notarization can be found here:
68+
69+
https://developer.apple.com/videos/play/wwdc2022/10109
70+
71+
Choosing the Direct Distribution option from Organizer will notarize the app. Xcode Cloud also supports notarization during automation. This can be done by adding a notarize post action inside the workflow editor.
76.4 KB
Loading

0 commit comments

Comments
 (0)