Skip to content

Commit 50552d7

Browse files
authored
Update README and build (#146)
1 parent b83246c commit 50552d7

File tree

3 files changed

+54
-50
lines changed

3 files changed

+54
-50
lines changed

README.md

Lines changed: 49 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -43,48 +43,52 @@ Targets can be defined in the `package.json` or `projects.json`. Learn more [in
4343

4444
## TestFlight
4545

46-
### New Build
47-
48-
- Update the Version and Build numbers in `app.json`. If you're pushing an update, you'll probably just want to increment the build.
49-
50-
```shell
51-
nx prebuild mobile-app -- --platform ios
52-
nx cargo-ios ironfish-native-module -- --target='ios'
53-
cd packages/mobile-app/ios
54-
pod install
55-
open .
56-
```
57-
58-
- Double click .xcworkspace file (requires xcode)
59-
60-
#### In XCode
61-
62-
- Click folder icon in top left of editor
63-
- Double Click "mobileapp"
64-
- Signing & Capabilities tab
65-
- Under signing select "IF Labs" for team (must be added to team in App Store Connect, ask Derek)
66-
- Bundle identifier should be prepopulated but should read "network.ironfish.mobilewallet"
67-
- Double-check Version and Build numbers match those in `app.json`.
68-
- In the scheme bar (top center of editor), select Any iOS Device (arm64)
69-
- Mac menu bar - click Product -> Archive, wait for build (might take a minute or two)
70-
- Click Distribute App button in popup
71-
- App Store Connect -> Distribute
72-
73-
#### TestFlight website
74-
75-
- Login at appstoreconnect.apple.com
76-
- Go to apps
77-
- Click Iron Fish Wallet
78-
- Click Test Flight tab
79-
- From here you can manage internal testing groups/members and builds
80-
81-
### Adding Testflight user
82-
83-
- For internal only, go to AppStoreConnect, Users and Access
84-
- Click +, enter email of employee that they use on their iOS device (probably not work email), add them as customer support
85-
- Have them verify joining team by checking email
86-
- Go to Apps -> Ironfish Wallet -> Testflight
87-
- Left panel Click Internal Testing IF Labs
88-
- Click + for testers
89-
- Select new user, click add
90-
- Have user go to email, and follow link to test app
46+
[TestFlight](https://developer.apple.com/testflight/) makes it easy to deploy beta builds to iOS users. To deploy, you'll need to have XCode installed.
47+
48+
### Preparing the build
49+
50+
1. Increment the build number in `app.json`. Updating just the build allows for quicker deploys to TestFlight, so avoid updating the version number.
51+
52+
1. Prebuild the app:
53+
```shell
54+
nx prebuild mobile-app -- --platform ios
55+
```
56+
1. Install native dependencies:
57+
```
58+
nx pod-native mobile-app
59+
```
60+
1. Open the XCode Workspace:
61+
```
62+
open packages/mobile-app/ios/IronFish.xcworkspace
63+
```
64+
65+
#### Creating and uploading the build
66+
67+
1. Click the folder icon in top left of editor (Project navigator).
68+
1. Click "IronFish", then the Signing & Capabilities tab.
69+
1. Verify that "IF Labs" displays for the team. If not, select it if available, or sign in with an Apple account that has access to the developer team.
70+
1. Verify that the bundle identifier reads "network.ironfish.mobilewallet"
71+
1. Switch to the Info tab. Verify that the following fields match `app.json`:
72+
* "Bundle version" should match `buildNumber`
73+
* "Bundle version string (short)" should match `version`
74+
1. In the scheme bar (top center of editor), select "Any iOS Device (arm64)"
75+
1. In the Mac menu bar, click Product -> Archive, then wait for the build to complete.
76+
* `codesign` may ask you to enter your password to sign the build.
77+
1. The list of builds will appear (You can return here with Window -> Organizer). Select the latest archive and click "Distribute App".
78+
1. Select "App Store Connect", then click "Distribute".
79+
* There may be some errors about missing symbols, but it's fine to ignore.
80+
81+
#### Deploying the build to TestFlight
82+
83+
1. Login at appstoreconnect.apple.com
84+
1. Click "Apps"
85+
1. Click "Iron Fish Wallet"
86+
1. Click the TestFlight tab
87+
1. Wait for the build you uploaded to finish processing
88+
* You may need to complete encryption compliance questions.
89+
1. Click on the build number
90+
1. Under Test Details, fill out information about what changed.
91+
1. Under Group, click the plus and add "External Testers".
92+
1. Check "Automatically notify testers"
93+
1. Fill out the field with the same content as Test Details
94+
1. Click Submit for Review

packages/mobile-app/app.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"icon": "./assets/icon.png",
1818
"bundleIdentifier": "network.ironfish.mobilewallet",
1919
"appleTeamId": "9WR79D873L",
20-
"buildNumber": "2",
20+
"buildNumber": "3",
2121
"infoPlist": {
2222
"NSAppTransportSecurity": {
2323
"NSAllowsArbitraryLoads": false,
@@ -37,7 +37,10 @@
3737
}
3838
}
3939
},
40-
"supportsTablet": true
40+
"supportsTablet": true,
41+
"config": {
42+
"usesNonExemptEncryption": false
43+
}
4144
},
4245
"android": {
4346
"adaptiveIcon": {

packages/mobile-app/project.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,6 @@
2727
"ios": {
2828
"dependsOn": ["pod-sim"]
2929
},
30-
"ios-native": {
31-
"dependsOn": ["pod-sim"]
32-
},
3330
"lint": {
3431
"dependsOn": ["^build"]
3532
},

0 commit comments

Comments
 (0)