Closed baskren closed 4 years ago
I just released My Stream Timer via VSfM and went through this alright. It is really complicated because there is app store and non-app store installers.
So, for app store you should NOT check "sign the installer package"
Also you don't need the hardened runtime if you are releasing to the store.
From there, I archive for publishing and do App Store for sign & distribute
From there you can do the normal flow and upload via transporter.
Marking as need-info until we hear back.
@jamesmontemagno - Thank you for the prompt response.
Unfortunately, I could not get the above recommendation to work for me. What I've tried as a result of that recommendation:
I've tried a full set of permutations with both of the following Project Settings / Mac Signing
EDIT: Fixed wrong screen shot here:
Complete delete of 'bin/' and 'obj/' folders and restart of VSfM before each build
A full set permutations of Submitting to Transporter the .pkg
file from the following processes:
.pkg
from the bin/Release/
folder).pkg
from the folder chosen during [Sign and Distribute])In all cases, I get output like the following from Transporter:
![image](https://user-images.githubusercontent.com/2528888/87468909-6b35e480-c5e8-11ea-8d41-124113190e93.png)
Verification Log
[2020-07-14 15:33:22 EDT] <main> INFO: Configuring logging...
[2020-07-14 15:33:22 EDT] <main> INFO: Logging level set to eXtreme
[2020-07-14 15:33:22 EDT] <main> INFO: Transporter is searching for new software components.
[2020-07-14 15:33:22 EDT] <main> INFO: INFO: using cached repository.xml file.
[2020-07-14 15:33:22 EDT] <main> INFO: Update check complete.
[2020-07-14 15:33:23 EDT] <main> DEBUG: Attempting refresh of configuration data from https://contentdelivery.itunes.apple.com/transporter/Defaults.properties
[2020-07-14 15:33:23 EDT] <main> DEBUG: Configuration refresh successful.
[2020-07-14 15:33:23 EDT] <main> DEBUG: Saving configuration to local path: /Users/benjaminaskren/Library/Caches/com.apple.amp.itmstransporter/Defaults.properties
[2020-07-14 15:33:23 EDT] <main> INFO: iTMSTransporter : iTunes Store Transporter [2.0.0]
[2020-07-14 15:33:23 EDT] <main> INFO: OS identifier: Mac OS X 10.15.5 (x86_64); jvm=25.71-b02; jre=1.8.0-u131-b11-iTMSTransporter-b02
[2020-07-14 15:33:23 EDT] <main> INFO: Memory: [JVM] 1045M free, 1101M total, 1820M max [System] (Physical) 48527M free, 65536M total (Swap) 0 free, 0 total
[2020-07-14 15:33:23 EDT] <main> INFO: Client: TransporterApp 1.1.1 (1171)
[2020-07-14 15:33:23 EDT] <main> INFO: Verify mode selected.
[2020-07-14 15:33:23 EDT] <main> INFO: Examining the package at: /var/folders/83/_5ygzczj7wd39k52kr6_jdqr0000gn/T/809D92A8-FBD5-4BE0-9B1F-E034790ECFC6/1523219962.itmsp
[2020-07-14 15:33:23 EDT] <main> INFO: Ensuring that package has well formed metadata file...
[2020-07-14 15:33:23 EDT] <main> DEBUG: Getting case-sensitive metadata xml filename...
[2020-07-14 15:33:23 EDT] <main> INFO: Gathering the list of valid files from the package ...
[2020-07-14 15:33:23 EDT] <main> DEBUG: AssetBuilder.pkg will be verified by Apple's web service to determine if it is a valid file.
[2020-07-14 15:33:23 EDT] <main> DEBUG: metadata.xml will be verified by Apple's web service to determine if it is a valid file.
[2020-07-14 15:33:23 EDT] <main> INFO: Finished gathering the list of valid files from the package.
[2020-07-14 15:33:23 EDT] <main> DEBUG: Case-sensitive metadata filename is: metadata.xml
[2020-07-14 15:33:23 EDT] <main> INFO: Performing verification of package 1523219962.itmsp...
[2020-07-14 15:33:24 EDT] <main> DBG-X: Memory: [JVM] 1043M free, 1101M total, 1820M max [System] (Physical) 48526M free, 65536M total (Swap) 0 free, 0 total
[2020-07-14 15:33:24 EDT] <main> INFO: JSON:{"msg":{"phase":"Verify","description":"Analyzing metadata","index":0},"messageType":"VerifyProgress"}
[2020-07-14 15:33:24 EDT] <main> DBG-X: Deflated 615 bytes to 452
[2020-07-14 15:33:24 EDT] <main> DBG-X: Using operation named: validateMetadata
[2020-07-14 15:33:24 EDT] <main> DBG-X: Apple's web service operation input parameters:
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Application = iTMSTransporter
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter BaseVersion = 1.13.0
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Client = TransporterApp
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter ClientVersion = 1.1.1 (1171)
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter DryRun = true
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Files = [AssetBuilder.pkg, metadata.xml]
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter ItcProviderName = 42ndParallel
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Metadata = <?xml version="1.0" encoding="UTF-8"?>
<package version="software5.4" xmlns="http://apple.com/itunes/importer">
<software_assets apple_id="1523219962"
bundle_short_version_string="1.0"
bundle_version="1"
bundle_identifier="com.p42.AssetBuilder"
app_platform="osx">
<asset type="product-archive">
<data_file>
<file_name>AssetBuilder.pkg</file_name>
<checksum type="md5">fbed0aef9b6afebc25b0a8304d42d815</checksum>
<size>30299044</size>
</data_file>
</asset>
</software_assets>
</package>
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter MetadataChecksum = 09f13db7a021167e5db1ce244d585a15
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter MetadataCompressed = (suppressed)
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter OSIdentifier = Mac OS X 10.15.5 (x86_64); jvm=25.71-b02; jre=1.8.0-u131-b11-iTMSTransporter-b02
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter PackageName = 1523219962.itmsp
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter PackageSize = 30299659
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter StatisticsClientStartDateTimeZoneISO = 2020-07-14T15:33:24-04:00
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter StatisticsPreviousCallDurationInSecs = 0.12943803
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter TransporterArguments = -m verify -u myemailaddress@myemailprovider.com -vp json -sessionid @env:52BED9A3-E416-4B02-8B78-69880A01E2AF -sharedsecret **hidden value** -itc_provider 42ndParallel -f /var/folders/83/_5ygzczj7wd39k52kr6_jdqr0000gn/T/809D92A8-FBD5-4BE0-9B1F-E034790ECFC6/1523219962.itmsp -indicator true -v eXtreme -Dtransporter.client=TransporterApp -Dtransporter.client.version=1.1.1 (1171)
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Version = 2.0.0
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter iTMSTransporterMode = verify
[2020-07-14 15:33:24 EDT] <main> INFO: id = 20200714153324-579
[2020-07-14 15:33:24 EDT] <main> INFO: iTMSTransporter Correlation Key: 92947fa1-42ec-4043-b74a-4866141e9a47-0001
[2020-07-14 15:33:24 EDT] <main> DBG-X: Apple's web service operation return value:
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter EnableJWTForAllCalls = false
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter SessionExpiration = 2020-07-18T19:33:24.265Z
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter MinimumFileSizeThresholdForCheckum = 104857600
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter SoftwareMediaDescriptionFormat = binary
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter SoftwareMediaDescriptionThresholds = {in-app-purchase-content={extensions=[pkg], size=100000000}, ccats={extensions=[pdf], size=100000000}, product-archive={extensions=[pkg], size=100000000}, developer-id-package={extensions=[zip, pkg, dmg], size=100000000}, bundle={extensions=[zip, ipa], size=100000000}, large-icon={extensions=[jpg, png, jpeg], size=100000000}}
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Success = true
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter StreamingSettings = {LogStreamingEnabled=true, MultipartUploadsEnabled=true, AssetDescriptionStreamingEnabled=false}
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter FilesToUpload = [metadata.xml, AssetBuilder.pkg]
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter AssetsToDescribe = [{Role=source, Filename=AssetBuilder.pkg, ShouldDescribeAsset=true, UTI=com.apple.pkg}]
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter CPUToken = 3ae203af-6cd6-4ee8-bddf-64e87e9135cb/1594755204639
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter Checksums = {AssetBuilder.pkg=fbed0aef9b6afebc25b0a8304d42d815}
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter FileSizes = {AssetBuilder.pkg=30299044}
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter ShouldUseRESTAPIs = false
[2020-07-14 15:33:24 EDT] <main> DBG-X: parameter ProviderNameForToken = 42ndParallel
[2020-07-14 15:33:24 EDT] <main> INFO: The asset replacement verification check is disabled.
[2020-07-14 15:33:24 EDT] <main> INFO: Checking the file size of the files: [AssetBuilder.pkg]
[2020-07-14 15:33:24 EDT] <main> DBG-X: Checking the size of file: AssetBuilder.pkg
[2020-07-14 15:33:24 EDT] <main> INFO: Done checking the file sizes.
[2020-07-14 15:33:24 EDT] <main> INFO: Checking the md5 checksum of the files: [AssetBuilder.pkg]
[2020-07-14 15:33:24 EDT] <main> DBG-X: Checking the MD5 checksum of file: AssetBuilder.pkg
[2020-07-14 15:33:24 EDT] <main> INFO: Done checking the md5 checksum.
[2020-07-14 15:33:24 EDT] <main> INFO: Starting media analysis of assets
[2020-07-14 15:33:25 EDT] <main> DEBUG: Handling asset: filename=AssetBuilder.pkg,uti=com.apple.pkg,role=source,describe=true
[2020-07-14 15:33:25 EDT] <main> INFO: JSON:{"msg":{"phase":"Verify","count":3,"description":"Adding asset to analyze:","index":1,"asset":"AssetBuilder.pkg"},"messageType":"VerifyProgress"}
[2020-07-14 15:33:25 EDT] <main> DEBUG: Using container type tool name and version: Mac App Describer:1.26
[2020-07-14 15:33:25 EDT] <main> DEBUG: Using path: /var/folders/83/_5ygzczj7wd39k52kr6_jdqr0000gn/T/809D92A8-FBD5-4BE0-9B1F-E034790ECFC6/1523219962.itmsp/AssetBuilder.pkg
[2020-07-14 15:33:26 EDT] <main> DBG-X: description length:0
[2020-07-14 15:33:26 EDT] <main> DBG-X: Asset description:
[2020-07-14 15:33:26 EDT] <main> DEBUG: Asset successfully described: com.apple.jingle.leghorn.software.AbstractSoftwareDescriber$1@78010562
[2020-07-14 15:33:26 EDT] <main> DBG-X: Deflated 538 bytes to 338
[2020-07-14 15:33:26 EDT] <main> INFO: Asset media analysis has completed
[2020-07-14 15:33:26 EDT] <main> DBG-X: Memory: [JVM] 1010M free, 1101M total, 1820M max [System] (Physical) 48502M free, 65536M total (Swap) 0 free, 0 total
[2020-07-14 15:33:26 EDT] <main> INFO: JSON:{"msg":{"phase":"Verify","count":3,"description":"Validating assets","index":2},"messageType":"VerifyProgress"}
[2020-07-14 15:33:26 EDT] <main> DBG-X: Deflated 615 bytes to 452
[2020-07-14 15:33:26 EDT] <main> DBG-X: Using operation named: validateAssets
[2020-07-14 15:33:26 EDT] <main> DBG-X: Apple's web service operation input parameters:
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter Application = iTMSTransporter
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter BaseVersion = 1.13.0
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter Client = TransporterApp
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter ClientVersion = 1.1.1 (1171)
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter DryRun = true
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter Files = [AssetBuilder.pkg, metadata.xml]
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter ItcProviderName = 42ndParallel
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter MetadataChecksum = 09f13db7a021167e5db1ce244d585a15
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter MetadataCompressed = (suppressed)
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter OSIdentifier = Mac OS X 10.15.5 (x86_64); jvm=25.71-b02; jre=1.8.0-u131-b11-iTMSTransporter-b02
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter PackageName = 1523219962.itmsp
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter PackageSize = 30299659
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter StatisticsClientStartDateTimeZoneISO = 2020-07-14T15:33:26-04:00
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter StreamingInfoList = [file: 7052deb4-2294-4acc-a90d-9ea0d50e5b993953575701799083307.swinfo.plist.gz, content-length: 56447, content-type: application/binary, MD5: ebd259d727dd6a6ae16607a18291f202]
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter TransporterArguments = -m verify -u myemailaddress@myemailprovider.com -vp json -sessionid @env:52BED9A3-E416-4B02-8B78-69880A01E2AF -sharedsecret **hidden value** -itc_provider 42ndParallel -f /var/folders/83/_5ygzczj7wd39k52kr6_jdqr0000gn/T/809D92A8-FBD5-4BE0-9B1F-E034790ECFC6/1523219962.itmsp -indicator true -v eXtreme -Dtransporter.client=TransporterApp -Dtransporter.client.version=1.1.1 (1171)
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter Version = 2.0.0
[2020-07-14 15:33:26 EDT] <main> DBG-X: parameter iTMSTransporterMode = verify
[2020-07-14 15:33:26 EDT] <main> INFO: id = 20200714153326-961
[2020-07-14 15:33:26 EDT] <main> INFO: iTMSTransporter Correlation Key: 92947fa1-42ec-4043-b74a-4866141e9a47-0001
[2020-07-14 15:33:28 EDT] <main> DBG-X: Apple's web service operation return value:
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter EnableJWTForAllCalls = false
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter MinimumFileSizeThresholdForCheckum = 104857600
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter SoftwareMediaDescriptionFormat = binary
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter RestartClient = false
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter SoftwareMediaDescriptionThresholds = {in-app-purchase-content={extensions=[pkg], size=100000000}, ccats={extensions=[pdf], size=100000000}, product-archive={extensions=[pkg], size=100000000}, developer-id-package={extensions=[zip, pkg, dmg], size=100000000}, bundle={extensions=[zip, ipa], size=100000000}, large-icon={extensions=[jpg, png, jpeg], size=100000000}}
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter Success = false
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter Errors = [ERROR ITMS-90283: "Invalid Provisioning Profile. The provisioning profile included in the bundle com.p42.AssetBuilder [com.p42.AssetBuilder.pkg/Payload/AssetBuilder.Mac.app] is invalid. [Invalid 'com.apple.application-identifier' entitlement value.] For more information, visit the macOS Developer Portal."]
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter FilesToUpload = [metadata.xml, AssetBuilder.pkg]
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter AssetsToDescribe = [{Role=source, Filename=AssetBuilder.pkg, ShouldDescribeAsset=true, UTI=com.apple.pkg}]
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter Checksums = {AssetBuilder.pkg=fbed0aef9b6afebc25b0a8304d42d815}
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter FileSizes = {AssetBuilder.pkg=30299044}
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter ErrorCode = 1102
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter ErrorMessage = ERROR ITMS-90283: "Invalid Provisioning Profile. The provisioning profile included in the bundle com.p42.AssetBuilder [com.p42.AssetBuilder.pkg/Payload/AssetBuilder.Mac.app] is invalid. [Invalid 'com.apple.application-identifier' entitlement value.] For more information, visit the macOS Developer Portal.
(1102)
[2020-07-14 15:33:28 EDT] <main> DBG-X: parameter ShouldUseRESTAPIs = false
[2020-07-14 15:33:28 EDT] <main> ERROR: ERROR ITMS-90283: "Invalid Provisioning Profile. The provisioning profile included in the bundle com.p42.AssetBuilder [com.p42.AssetBuilder.pkg/Payload/AssetBuilder.Mac.app] is invalid. [Invalid 'com.apple.application-identifier' entitlement value.] For more information, visit the macOS Developer Portal."
[2020-07-14 15:33:28 EDT] <main> DBG-X: The error code is: 1102
[2020-07-14 15:33:28 EDT] <main> INFO: JSON:{"msg":{"phase":"Verify","count":3,"description":"Operation failed","index":3},"messageType":"VerifyProgress"}
[2020-07-14 15:33:28 EDT] <main> DBG-X: Returning 1
Package Summary:
1 package(s) were not verified because they had problems:
/var/folders/83/_5ygzczj7wd39k52kr6_jdqr0000gn/T/809D92A8-FBD5-4BE0-9B1F-E034790ECFC6/1523219962.itmsp - Error Messages:
ERROR ITMS-90283: "Invalid Provisioning Profile. The provisioning profile included in the bundle com.p42.AssetBuilder [com.p42.AssetBuilder.pkg/Payload/AssetBuilder.Mac.app] is invalid. [Invalid 'com.apple.application-identifier' entitlement value.] For more information, visit the macOS Developer Portal."
Note that the above was with the current Preview version of VSfM. I will now try reverting to the Stable version.
Just rolled back to Stable version of VSfM ... no luck. Also, for grins, turned off Project Options / Mac Build / Packaging / Create Installer Package and tried again. Still no luck.
Lost over a week on this.
@baskren Did you manage to get this working in the end?
I thought I did. However, the app submission was stalled in Apple's review process for months. Turns out their scripts couldn't support the character that I used in lieu of the space character. They asked me to re-submit but, given the terrible effort to reward ratio I had on this project, I just gave up. This was the last nail in the coffin form me for Xamarin.
@baskren You wouldn't happen to remember what you had in your entitlements.plist to get this working?
Short Description:
Release build of Xamarin MacOS app (Xamarin.Forms) fails verify process of Apple's Transport.app with the following issue:
Steps to Reproduce
Expected Behavior
The app is successfully verified
Actual Behavior
With the above (and all of the additional steps, noted in Diagnostics already tried, below) Transporter fails verification with the following message:
Diagnostics already tried:
Using MacOS Distribution certificates:
Info.plist
Entitlements.plist
VisualStudio Project Settings / Mac Signing
Apple App Connect / Certificates
Keychain / Certificates
Apple App Connect / Identities
NOTE: No capabilities on this page have been checked as they are not needed (nor listed in the Entitlements.plist, above).
Provisioning Profile
After Release Build, using Max Inspect
NOTES:
.pkg
file was pulled from the MacOS platform project folder's bin/Release/ folder.app
was also pulled from the MacOS platform project folder's bin/Release foldercom.apple.application-identifier
value is2RS7Y3P527.com.p42.AssetBuilder
. Notice that the prefix is the App ID Prefix, not, KKD88FVWF5, the publisher's ID.Mac Distribution: 42nd Parallel (KKD88FVWF5)
Additional step (for grins). Use VisualStudio's Archive for Publishing and [Sign and Distribute]
In the below, the
.pkg
file was pulled from the destination chosen for publishing.A) Sign and distribute as "Mac Installer Package"
B) Sign and distribute as "App Store"
Using new Apple Distribution Certificate
If one were to create a new MacOS app using Xcode 11.5, that app would use the new Apple Distribution Certificate (instead of the Mac Distribution Certificate, as shown in the above section). Also note that, in VisualStudio / Preferences / Publishing / Apple Developer Accounts ...
Only the new Apple Distribution certificate is shown - not that older Mac Distribution ... even though both can be found in App Connect:
Below is an attempt to use this approach with VisualStudio.
VisualStudio Project Settings / Mac Signing
Note that even though the Apple Distribution Certificate is in keychain (below) and shown in VisualStudio (above), it is not an option in Project Settings / App Signing. However, as will be shown later, the default settings do use the Apple Distribution Certificate.
Apple Distribution Certificate
Keychain / Certificates
Provisioning Profile
After Release Build, using Max Inspect
NOTE: Here you can see that the app was built using the new Apple Distribution type of Certificate!
However, when trying to Verify using Transporter, the same error occurs. And, when trying to use Archive for Publishing ...
Additional step (for grins). Use VisualStudio's Archive for Publishing and [Sign and Distribute]
A) Sign and distribute as "Mac Installer Package"
B) Sign and distribute as "App Store"
Note that both approaches show the OLD Mac Distribution certificates for signer identity - not the new Apple Distribution. And, as before, Transporter fails to verify the app.
Yet to be tried:
Environment
Build Logs
https://gist.github.com/baskren/7f2a7c6e6e0c759033e8d90c19056a43
Example Project (If Possible)
https://github.com/baskren/AssetBuilder