iOS Question iTunes connect uploader - payload folder contents

Scotter

Active Member
Licensed User
Here's the error message I get:
'requires a top-level directory named Payload, containing only a .app bundle and optional plugins in a Plugins directory.\"}"'
UPDATE (still need help):
unzipped "temp.zip" to find two folders:
- CalcMaterials.app
- CalcMaterials.app.dSYM
Tried to upload this temp.zip and the iTunes connect uploader gave me an error "invalid archive".
Saw in another thread you requested the archive file.
Tried to attach and told too large.
So I uploaded it to my server and emailing link to Erel.
Thanks!
 
Last edited:

Scotter

Active Member
Licensed User
Thanks!
Maybe I'm doing something wrong here.
Can we back up?
After debugging and making sure the app runs on my iPhone, here is what I'm doing:
(1) Tools --> Build Server --> Build Release app
(2) Tools --> Build Server --> Download last build
(3) I now see the following in my Objects folder:
Folder: b4xlibs
Folder: bin
Folder: src
File: CalcMaterials.ipa
File: tmp.zip (contains folder: Payload, which contains 2 folders: CalcMaterials.app and CalcMaterials.app.dSYM)
(4) When I try to Upload App to iTunes Connect...
(a) Pointing to the CalcMaterials.ipa file, I get this message: "Uploading ipa file... submitting app... error: requires a top-level directory named Payload, containing only a .app bundle and optional plugins in a Plugins directory.\"
(b) Pointing to the tmp.zip file, I get this message: "invalid archive".
 

Scotter

Active Member
Licensed User
Aha! "Application compiled with non-store provision profile."
How do I do it right, please?
 

Scotter

Active Member
Licensed User
Thanks for all your quick help on this!
I'm going thru that tutorial.
Where in my B4i project do I put the following code?
B4X:
#If RELEASE
   #ProvisionFile: store.mobileprovision
#END IF
 

Scotter

Active Member
Licensed User
When I try to Tools Build Server --> Build Release App, I get:
"Compiling code. (0.31s)
Compiling layouts code. (0.02s)
Building Xcode project (0.28s)
Sending data to remote compiler. Error
Failed to parse certificate file.Error: security: SecKeychainDelete: The specified keychain could not be found."

Here's some potentially pertinent information:

I DID start over by deleting all in keys folder.
Maybe I did some of these things in the wrong order?
Note bottom item was created first.
Files in "/keys" ordered by date/time DESC:
- ios_distribution.cer
- ios_development.cer
- store.mobileprovision
- AuthKey_4M3K5CH2G8.p8
- certSigningRequest.csr
- B4i.p12
- B4i.keystore

Top of my app:
#Region Project Attributes
#ApplicationLabel: CalcMaterials
#Version: 1.0.1
#iPhoneOrientations: Portrait, LandscapeRight
#iPadOrientations: Portrait, LandscapeRight
#Target: iPhone, iPad
#ATSEnabled: True
#MinVersion: 7
#CertificateFile: ios_development.cer
#If RELEASE
#CertificateFile: ios_distribution.cer
#ProvisionFile: store.mobileprovision
#END IF
#End Region
 
Last edited:

Scotter

Active Member
Licensed User
So the #IF RELEASE changing to dist cert does not change that variable when needed and I should completely remove reference to dev cert?
Thanks. I'll redo entire process.
 

Scotter

Active Member
Licensed User
Thanks for all your patience with me!
Before I do this another time, I'd like to get your advice on what order to do the following in because I see how order is important for this process and I'm pretty sure I got it wrong here:
- B4i.p12
- B4i.keystore
- certSigningRequest.csr - Use B4i
- ios_distribution.cer - From Developer.Apple.com
- store.mobileprovision - From Developer.Apple.com - choose "Distribution: App Store" then "MaterialsCalc"
- AuthKey_4M3K5CH2G8.p8

Thanks!
 
Last edited:

Scotter

Active Member
Licensed User
Edited: Now need to know what to put in "Bundle ID Suffix" (see below).
I've created cert and key on their site.
?app specific pw: xxxx-xxxx-xxxx-xxxx?
Maybe I can get it here:
AppStoreConnect.apple.com...
General Information
Bundle ID: MaterialsCalc - com.cobrastone.*
Bundle ID ???Suffix???
SKU: MatCalcV101
What do I put for Bundle ID Suffix?
 
Last edited:

mcqueccu

Active Member
Licensed User
If for example your package name
com.cobrastrone.MaterialsCalc

Your Bundle ID: MaterialsCalc - com.cobrastone.*
Your Bundle Suffix: MaterialsCalc

For me, I usually use my full package name as the SKU
 

Scotter

Active Member
Licensed User
How about this other naming issue:
Is it a problem that I named the store profile as "forMaterialsCalc"?
I assumed that name was merely a label for my reference but maybe it matters and should be "MaterialsCalc"?
Provisioning Profile from App store
SKU: MatCalcV101
Name: forMaterialsCalc
Type: App Store
App ID: 4JT9M6T9K2.com.cobrastone.*
Expires: 2021/03/13
 

mcqueccu

Active Member
Licensed User
It is not a problem.
After you download it, place it inside your B4i Keys folder. Call the exact name in the if release code


B4X:
    #If RELEASE       
           #ProvisionFile: forMaterialsCalc.mobileprovision   
    #END IF
 
Top