Browse Source

Improve documentation for signing on macOS (#2591)

* Improve documentation for signing on macOS

* fixup! Improve documentation for signing on macOS
dima-avdeev/resources-demo-js-workaround
Thomas Vos 1 year ago committed by GitHub
parent
commit
752815d96a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 21
      tutorials/Signing_and_notarization_on_macOS/README.md

21
tutorials/Signing_and_notarization_on_macOS/README.md

@ -15,22 +15,22 @@ for distribution on macOS.
* [Xcode](https://developer.apple.com/xcode/). The tutorial was checked with Xcode 12.3. * [Xcode](https://developer.apple.com/xcode/). The tutorial was checked with Xcode 12.3.
* JDK 15+. The tutorial was checked with OpenJDK 15.0.1. * JDK 15+. The tutorial was checked with OpenJDK 15.0.1.
## Preparing a Developer ID certificate ## Preparing a certificate
You will need a Developer ID certificate for signing your app. You will need a certificate for signing your app.
#### Checking existing Developer ID certificates #### Checking existing certificates
Open https://developer.apple.com/account/resources/certificates Open https://developer.apple.com/account/resources/certificates
#### Creating a new Developer ID certificate #### Creating a new certificate
1. [Create a certificate signing request](https://help.apple.com/developer-account/#/devbfa00fef7): 1. [Create a certificate signing request](https://developer.apple.com/help/account/create-certificates/create-a-certificate-signing-request):
* Open `Keychain Access`. * Open `Keychain Access`.
* Open the menu dialog * Open the menu dialog
``` ```
Keychain Access > Certificate Assistant > Request a Certificate from a Certificate Authority Keychain Access > Certificate Assistant > Request a Certificate from a Certificate Authority
``` ```
* Enter your Developer ID email and common name. * Enter your certificate email and common name.
* Check `Save to disk` option. * Check `Save to disk` option.
2. Create and install a new certificate using your [Apple Developer account](https://developer.apple.com/account/): 2. Create and install a new certificate using your [Apple Developer account](https://developer.apple.com/account/):
* Open https://developer.apple.com/account/resources/certificates/add * Open https://developer.apple.com/account/resources/certificates/add
@ -104,7 +104,7 @@ Note that you need to create two of these profiles, one for your app and another
## Creating an app-specific password ## Creating an app-specific password
To be able to upload an app for notarization, To be able to upload an app for notarization,
you will need an app-specific password associated with your Apple ID. you will need an app-specific password associated with your Apple ID. Notarization is only required for apps outside the App Store.
Follow these steps to generate a new password: Follow these steps to generate a new password:
1. Sign in to your [Apple ID](https://appleid.apple.com/account/home) account page. 1. Sign in to your [Apple ID](https://appleid.apple.com/account/home) account page.
@ -223,6 +223,8 @@ Those properties could be stored in `$HOME/.gradle/gradle.properties` to use acr
### Configuring notarization settings ### Configuring notarization settings
Notarization is only required for apps outside the App Store.
``` kotlin ``` kotlin
macOS { macOS {
notarization { notarization {
@ -369,9 +371,10 @@ Apple, and they may be able to give you a more detailed error message.
## Using Gradle ## Using Gradle
The following tasks are available: The following tasks are available:
* Use `createDistributable` or `packageDmg` to get a signed application * Use `createDistributable`, `packageDmg`, or `packagePkg` to get a signed application
(no separate step is required). (no separate step is required).
* Use `notarize<PACKAGING_FORMAT>` (e.g. `notarizeDmg`) to upload an application for notarization. * Use `notarize<PACKAGING_FORMAT>` (e.g. `notarizeDmg`) to upload an application for notarization.
Notarization is only required for apps outside the App Store.
Once the upload finishes, a `RequestUUID` will be printed. Once the upload finishes, a `RequestUUID` will be printed.
The notarization process takes some time. The notarization process takes some time.
Once the notarization process finishes, an email will be sent to you. Once the notarization process finishes, an email will be sent to you.

Loading…
Cancel
Save