I am using Xcode 4.3.1. I have a client that needs me to build an app for him and then allow him to submit (I am not the team agent so I cannot do it). However, Xcode keeps building .xcarchive files instead of .ipa files. What can I do?
An AppStore ipa file is the Payload folder with a signed ipa file together with a valid iTunesArtwork file (512x512 px) compressed to a zip archive renamed to .ipa:
Folder
Payload with a content:
myapp.app
iTunesArtwork
Archive Payload folder
Payload.zip
Rename archive
myapp.ipa
That .ipa file must be good for submission if you configure the build correctly, the client will have to set-up submission at iTunes connect and upload an ipa file there. Don't forget to keep a dsym file from the build, if that's lost you won't be able to symbolicate the crash logs for the client.
Related
The official Flutter documentations says that the following command produces both ipa and xcarchive files.
flutter build ipa
From the Flutter documentation to generate ipa
Run flutter build ipa to produce an Xcode build archive (.xcarchive
file) in your project’s build/ios/archive/ directory and an App Store
app bundle (.ipa file) in build/ios/ipa.
However, the command is generating only .xcarchive file. How can we generate the .ipa file? Looks like we can generate from Xcode Export but trying to look for a command line command to generate .ipa file to integrate into CI/CD solution.
You can generate .ipa file for distribution using Xcode via following steps
1.Open iOS folder of your project in Xcode
then Product -> Archive
It once this is complete open up the Organiser and click the latest version.
3.Now click on Distribute App This will open list of method for export. Select the export method as per your requirement (In your case i think you want to distribute app for testing) so select Development option and click on Next button.
4.Now it will ask for app thining and re-signed for development distribution select Automatically managing signing it take some time to generate .ipa file after that you can export .ipa file in your desire location.
When you run flutter build ipa, it generates a Runner.xcarchive and an IPA.
Output of flutter build:
Xcode archive done. 65.6s
Built /Users/user/repos/app_name/build/ios/archive/Runner.xcarchive.
Building App Store IPA... 64.5s
Built IPA to /Users/user/repos/app_name/build/ios/ipa.
The generated file is called app_name.ipa.
We are submitting an app with a compiled framework to the App Store. The dSYM file for the framework is available before the app is built in Xcode. Does it make sense to copy the dSYM file into the archive (via a build step) before it is uploaded to Apple? Will Apple use the extra dSYM file automatically, e.g. will the symbolication of the framework work for instance with TestFlight?
And more importantly, will the dSYM not be shipped to the users? (If someone could provide a link that states that the dSYMS are stripped by Apple that would be great, too.)
You can read about dSYMs:
https://developer.apple.com/library/archive/technotes/tn2151/_index.html
https://docs.fabric.io/apple/crashlytics/missing-dsyms.html
You can try to put dSYM files into dSYM folder inside archive and apple will use it on TestFlight.
You can also use crashlytics service and upload dSYMs anytime.
You can symbolicate crash logs by your own, if you have dSYM files locally.
Appstore and TF are not shipping dSYMs within the apps. dSYMs are embedded in dev builds only.
I work in Visual Studio for Windows. For building iOS app VS use Mac as build server. After building process I have IPA file at the windows host.
Than I need to upload it through ApplicationLoader. But ApplicationLoader is running on Mac and how can it access to windows host ipa?
The Visual Stuiod has command 'Show IPA file on build server' and when I use it I see finder is opened at someplace at Mac. But what is this place?
I start ApplicationLoader and try to find this IPA file without success.
Where is it? As workaround I copied (drag&drop) ipa file from this unknown folder to Mac desktop and selected the file from there.
When I upload ipa to iTunesConnect I don't see loaded symbols! Why the symbols isn't loaded?
And the last. I heard about fastlane that it prefer way to upload symbols to Crashlytics. So how can it worked as project files placed in Windows host?
You can't find ipa file after archive because it will not create ipa.
You need to create file manually .
Follow this steps to create .ipa
Right click on recent archive file in organisation and select show in finder option.
After you will .xcarchive file.
Right click on that file an select Show Package and content option.
Under Product folder. you can find .app file.
Drag .app file to application section in itunes after completion of process right click on icon and select show in finder option.
That's your ipa File .
Second solution
Build your project with production certificate .
After Build under product folder you can see .app file and show it in finder .
Follow to 5 and 6 from above solution.
You need to archive .ipa, not just build for release.
How can i change app icon after creating the ipa file .
I am follow below steps
Rename the .ipa to .zip, and unzip the archive.
Inside should be a folder called "payload", and inside that folder should be your application archive.
Change the app icons file
Re-zip the archive
Rename the .zip to .ipa
Re-sign the .ipa
But the ipa is not installed , It showing Modified (add or delete) file error . Can any one please help me
I am trying to archive a project with Xcode 6.1.1 and Mac OS X Server 4.0.3 and OS X 10.10.2. Signing the app with a "adHoc" provisioning works within the integration. But now i got the problem, that the file ".entitlements" does not get processed correctly.
When i download the xcarchive the archived-expanded-entitlements.xcent is part of the app bundle, but in the IPA file from the same integration the file is missing and so i can't install it on a device. Could it be that the export of an xcarchive with an "adHoc" certificate does not handle the entitelments the same way as with an enterprise or development provisioning? And if so, how should i configure the project that the archived-expanded-entitlements.xcent gets created with an "adHoc" provisioning?
Thanks for any Help
This may be related to a bug in xcode (see http://www.openradar.me/21309940). My workaround was to tweak my build script in continuous integration. After exporting the .ipa file it unzips the .ipa file, copies the archived-expanded-entitlements.xcent file from the .xcarchive directory to the Payload/<yourproject>.app directory and then rezips the Payload directory into a new .ipa file.