iOS Question SOLVED # This bundle is invalid. The IPA format requires a top-level directory named Payload, containing only a .app

DrManhattan

Member
Licensed User
Hello everyone,

I use iTunes Connect Uploader in B4i with:

User Id: apple developer email
Password: the one used in “private signature key” sign key (which is anyway the same as my apple developer email)

I download the latest Build Realease App and obtain two files
app.ipa and tmp.zip

After selecting app.ipa and downloading I get the following error?

I tried with Transporter on Mac the same

If anyone can point me in the direction of resolving the problem.

Téléchargement fichier IPA.
Soumettre l'application (cette étape peut prendre plusieurs minutes).
Error: 2024-01-28 06:58:34.599 Starting altool...
2024-01-28 06:58:34.604 Initializing bundle from: /Applications/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/AppStoreService.framework
2024-01-28 06:58:34.611 Will look for transporter at executable bundle relative path: /Applications/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Looking for Transporter at path: /Applications/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Looking for Transporter at path: /Applications/Xcode.app/Contents/Developer/usr/bin/../SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Looking for Transporter at path: /Applications/Xcode.app/Contents/Developer/usr/bin/../itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Looking for Transporter at path: /Applications/Transporter.app/Contents/itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Looking for Transporter at path: /usr/local/itms/bin/iTMSTransporter
2024-01-28 06:58:34.611 Using default transporter location: /usr/local/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Will look for transporter at executable bundle relative path: /Applications/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Looking for Transporter at path: /Applications/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Looking for Transporter at path: /Applications/Xcode.app/Contents/Developer/usr/bin/../SharedFrameworks/ContentDeliveryServices.framework/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Looking for Transporter at path: /Applications/Xcode.app/Contents/Developer/usr/bin/../itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Looking for Transporter at path: /Applications/Transporter.app/Contents/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Looking for Transporter at path: /usr/local/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 Using default transporter location: /usr/local/itms/bin/iTMSTransporter
2024-01-28 06:58:34.614 iTMSTransporter is not available. Using REST APIs.
2024-01-28 06:58:35.400
=======================
WEB SERVICE REQUEST 'generateAppleConnectToken'
URL: https://contentdelivery.itunes.apple.com/WebObjects/MZLabelService.woa/json/MZITunesSoftwareService
timeout: 1800
method: POST
httpHeaders: {
"Content-Length" = 510;
"Content-Type" = "application/json";
"x-request-id" = "20240128065835-635";
"x-tx-client-name" = altool;
"x-tx-client-version" = "7.006 (15006)";
"x-tx-method" = generateAppleConnectToken;
}
httpBody: {
id = "20240128065835-635";
jsonrpc = "2.0";
method = generateAppleConnectToken;
params = {
Application = altool;
ApplicationBundleId = "com.apple.itunes.altool";
FrameworkVersions = {
"com.apple.itunes.connect.ITunesConnectFoundation" = "7.006 (15006)";
"com.apple.itunes.connect.ITunesConnectFoundationExtras" = "7.006 (15006)";
"com.apple.itunes.connect.ITunesPackage" = "7.006 (15006)";
};
OSIdentifier = "Mac OS X 14.2.1 (x86_64)";
Password = **hidden value**;
Username = "my hidden email";
Version = "7.006 (15006)";
};
}
=======================
2024-01-28 06:58:36.238
=======================
WEB SERVICE RESPONSE (generateAppleConnectToken):
status code: 200 (no error)
MIME/TYPE: application/json
httpHeaders: {
"Accept-Language" = "en-US,en;q=0.9";
"Cache-Control" = "private, no-cache, no-store, must-revalidate, max-age=0";
Connection = "keep-alive";
"Content-Encoding" = gzip;
"Content-Length" = 226;
"Content-Type" = "application/json";
Date = "Sun, 28 Jan 2024 11:58:36 GMT";
Expires = "Wed, 24-Jan-2024 23:58:02 GMT";
Pragma = "no-cache";
Server = "daiquiri/3.0.0";
"Strict-Transport-Security" = "max-age=31536000; includeSubDomains";
"apple-originating-system" = MZContentDeliveryProducer;
"apple-seq" = "0.0";
"apple-timing-app" = "207 ms";
"apple-tk" = false;
b3 = "9ed6fc063a17e55616604cd7b82e7fff-77725b94c3a64fc9";
"x-apple-application-instance" = 243317;
"x-apple-application-site" = MR22;
"x-apple-jingle-correlation-key" = T3LPYBR2C7SVMFTAJTL3QLT774;
"x-apple-request-uuid" = "9ed6fc06-3a17-e556-1660-4cd7b82e7fff";
"x-b3-spanid" = 77725b94c3a64fc9;
"x-b3-traceid" = 9ed6fc063a17e55616604cd7b82e7fff;
"x-daiquiri-instance" = "daiquiri:13624002:mr85p00it-hyhk03094901:7987:24RELEASE17:daiquiri-amp-processing-shared-int-001-mr, daiquiri:18493001:mr85p00it-hyhk03154801:7987:24RELEASE17:daiquiri-amp-all-shared-ext-001-mr";
"x-json-content-length" = 454;
"x-request-through-daiquiri-producer" = "mr-internal";
"x-responding-instance" = "MZContentDeliveryProducer:243317:::";
"x-webobjects-loadaverage" = 0;
}
httpBody: {"result":{"Errors":["Unable to generate an Apple Connect token at this time due to a general error (1611)"],"RestartClient":false,"ErrorCode":1611,"ErrorMessage":"Unable to generate an Apple Connect token at this time due to a general error (1611)","ShouldUseRESTAPIs":false,"Success":false},"id":"20240128065835-635","jsonrpc":"2.0","error":{"code":1611,"message":"Unable to generate an Apple Connect token at this time due to a general error (1611)"}}
=======================
2024-01-28 06:58:36.238 Web service call (generateAppleConnectToken) result: {
ErrorCode = 1611;
ErrorMessage = "Unable to generate an Apple Connect token at this time due to a general error (1\U2026";
Errors = (
"Unable to generate an Apple Connect token at this time due to a general error (1\U2026"
);
RestartClient = 0;
ShouldUseRESTAPIs = 0;
Success = 0;
}
2024-01-28 06:58:36.241 {
ErrorCode = 1611;
ErrorMessage = "Unable to generate an Apple Connect token at this time due to a general error (1611)";
Errors = (
"Unable to generate an Apple Connect token at this time due to a general error (1611)"
);
RestartClient = 0;
ShouldUseRESTAPIs = 0;
Success = 0;
}
2024-01-28 06:58:36.241 Non-localized server string received: 'Unable to generate an Apple Connect token at this time due to a general error'.
2024-01-28 06:58:36.241 Non-localized server string received: 'Unable to generate an Apple Connect token at this time due to a general error'.
2024-01-28 06:58:36.323 Bad status code: <MZWebServiceDAWTokenForUsernameAndPassword: 0x7fba657055c0>
2024-01-28 06:58:36.323 *** Error: Error uploading 'D:\Developpement_B4i iOS\Objects\APP.ipa'.
2024-01-28 06:58:36.323 *** Error: Unable to upload archive. Failed to get authorization for username 'my hidden email' and password. (
"Error Domain=NSCocoaErrorDomain Code=0 \"Status code: 0\" UserInfo={NSLocalizedDescription=Status code: 0, NSLocalizedFailureReason=The auth server returned a bad status code.}"
) (-1011)
{
NSLocalizedDescription = "Unable to upload archive.";
NSLocalizedFailureReason = "Failed to get authorization for username 'my hidden email' and password. (\n \"Error Domain=NSCocoaErrorDomain Code=0 \\\"Status code: 0\\\" UserInfo={NSLocalizedDescription=Status code: 0, NSLocalizedFailureReason=The auth server returned a bad status code.}\"\n)";
}
 

mcqueccu

Well-Known Member
Licensed User
Longtime User
1706443923141.png


USERID: Your Apple Developer Email Address
PASSWORD: App specific password in this format: xxxx-xxxx-xxxx-xxxx
Check how to create app specific password: https://support.apple.com/en-us/102654
ARCHIVE FILE: Your IPA or Zipped file (compiled with Store provision profile)
 
Upvote 0

hatzisn

Well-Known Member
Licensed User
Longtime User
Hello everyone,

I use iTunes Connect Uploader in B4i with:

User Id: apple developer email
Password: the one used in “private signature key” sign key (which is anyway the same as my apple developer email)

I download the latest Build Realease App and obtain two files
app.ipa and tmp.zip

After selecting app.ipa and downloading I get the following error?

I tried with Transporter on Mac the same

If anyone can point me in the direction of resolving the problem.

Use a specific password for the app generated in (I think) appleid.apple.com.
 
Upvote 0

DrManhattan

Member
Licensed User
View attachment 150154

USERID: Your Apple Developer Email Address
PASSWORD: App specific password in this format: xxxx-xxxx-xxxx-xxxx
Check how to create app specific password: https://support.apple.com/en-us/102654
ARCHIVE FILE: Your IPA or Zipped file (compiled with Store provision profile)
I encounter an identical problem, I created the application password in the following format xxxx-xxxx-xxxx-xxxx on https://appleid.apple.com/

In apple developer I have for Identifiers created Bundle ID Explicit com.company.appname with the name of the application and Wildcard with com.company.*

Error: No suitable application records were found. Verify your bundle identifier “com.company.appname” is correct and that you are signed in with an Apple ID that has access to the app in App Store Connect. App Store operation failed. (-19000)
 
Upvote 0

DrManhattan

Member
Licensed User
we'll get there soon now I have this error

I have after downloading the latest build:
an app.ipa file
and a tmp.zip folder
the zip folder includes a Payload folder including two folders
name.app.dSYM
And
name.app

I thought I read in different forum messages that the zip file should be called Archive.zip and not contain dSYM ?
NSLocalizedDescription = "Asset validation failed";
NSLocalizedFailureReason = "This bundle is invalid. The IPA format requires a top-level directory named Payload, containing only a .app bundle and optional plugins in a Plugins directory. (ID: b629b396-1556-469f-bc22-8c2151e4baba)";
 
Last edited:
Upvote 0

hatzisn

Well-Known Member
Licensed User
Longtime User
I encounter an identical problem, I created the application password in the following format xxxx-xxxx-xxxx-xxxx on https://appleid.apple.com/

In apple developer I have for Identifiers created Bundle ID Explicit com.company.appname with the name of the application and Wildcard with com.company.*

Make sure you have the same bundle ID in the app created in appstore connect and in your app.
 
Upvote 0

DrManhattan

Member
Licensed User
Make sure you have the same bundle ID in the app created in appstore connect and in your app.
I had to change the name in the app store because it already existed.

but in :
#ApplicationLabel:
Build the configuration
and Identifiers from apple developer

the name is the same!
Do you think I should change everything like the name displayed in Apple Store Connect?
 
Upvote 0

DrManhattan

Member
Licensed User
Really not simple at all but I ended up finding it, I'm going to try in my spare time to write a notice, I spent too much time there and I don't find it normal. Time should be allocated to development and not installation.
Sans titre.jpg
 
Upvote 0
Top