Remotely create iPA or archive build - ios

How can I create iPA or Archive build without using xcode.
Schene - User can generate iPA from web app.
I know user can generate iPA using command line , But user should have xcode in his local machine then only he will be able to do it.
But i want to generate iPA remotely , Where user not have xcode.
He will have Git link (where entire project is available)
Another query
Currently user can archive or create iPA from local xcode project. I want to generate iPA directly from source code url (git/SVN). Is this possible ?
is it possible to do it without using jenkins or Fastlane

You can use a something like Jenkins to pull from the Git link and compile the project. The easiest way to do this is to combine Jenkins with Fastlane.

Related

Flutter - Generate .ipa file

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.

Flutter build IOS on windows

I'm working on a flutter project and I want to build the IPA of my code using windows. I don't want to test the application in my windows I want just to build the IPA. Is it possible to do it. Any help is highly appreciated.
The only way to generate an IPA from you windows machine is by using a CI/CD service like Codemagic using the steps described in this article:
link your repository (Github, BitBucket , or Gitlab).
from settings > build for platforms > IOS
change the .app file you received to .zip and extract it.
You will find a file called Runner.app, put in a folder and compress it back.
change the extension from .zip to .ipa.
And here's your first IOS build without a Mac device.
You cannot build a flutter iOS app directly from Windows. What you can do is use external tools to do it. One of these tools is Appollo (https://github.com/Appollo-CLI/Appollo). It's a python CLI tool that let you access remote MacOS build machines.
Here is a demo of how to create the IPA on windows : https://www.youtube.com/watch?v=ZX3DAMwlEfM&t=11s
It's pretty easy to use :
First install it
pip install appollo
Then setup your Apple Developer account with Appollo : https://appollo.readthedocs.io/en/master/tutorial/2_configure_app_store_connect.html
Finally you can build the app and retrieve the IPA
appollo build start --build-type ad-hoc
appollo build ipa
And that's it.

Generating an IPA file for a flutter project without a paid dev account

so I just finished a Flutter mobile app and I want to install on my personal iPhone. I know about the 7 days restriction, but buy an apple dev account for 99$/year was a bit too much for me so I used an external service. You pay them a lil bit of money and give them your iPhone's udid and they give you back the certificate and provisioning profile files and you can use an external signer to sign your apps. I have already done this for an app of mine a few month ago. But now I'm struggling with generating the ipa.
How can I generate the ipa file with the free apple account?
He again, so the way to generate an unsigned flutter ipa is by first going to Xcode and changing the build configuration of the scheme to Release :
Click on Runner, and Edit scheme
Select Release for the Build Configuration of the Run schema
And then on the terminal in Android Studio run the following command :
flutter build ios --release
This will take a minute or two and when it's done go to this folder : your-app/build/ios/Release-iphoneos and you should find your runner.app file. Create a folder named PayLoad next to it and copy and paste the runner.app file inside this folder. After that you wanna compress your Payload to get a new file named Payload.zip. Change its extension to ipa and you're done.
You can now use whatever you want to codesign this ipa file.

How to define a output name for flutter build ipa?

I could not find a parameter to define the output filename of the ipa file. Is there an easy way to set the ouput filename?
I use an azure pipeline to build my ipa file:
- script: flutter build ipa --export-options-plist=ios/exportOptions.plist --build-number=$(Build.BuildNumber)
displayName: Build iOS adHoc
I want to generate 2 ipa files. One for the AppStore with an AppStore profile and one with adHoc Profile. For that i want a second command but i cant find an easy way to declare a filename so i can have both files generated.
I was looking for this as well. There is a note about it here.
https://flutter.dev/docs/deployment/ios
Note: When you export your app at the end of Distribute App, Xcode
will create a directory containing an IPA of your app and an
ExportOptions.plist file. You can create new IPAs with the same
options without launching Xcode by running flutter build ipa
--export-options-plist=path/to/ExportOptions.plist. See xcodebuild -h for details about the keys in this property list.

Is it possible to create .ipa file local with phonegap?

I am working on a automatic process to build and sign my app local for android and ios. I already created successfully the signed .apk file for android. Now I am trying to create the .ipa file locally, without using Adobe PhoneGap Build.
All the necessary key-files are available. The online build over Adobe PhoneGap Build is working for both plattforms andorid/ios.
Note:- My powershell/cmd script is written and performed on windows.
you need a mac os to deploy the .ipa file locally.
create the phonegap project as you have done in the windows machine and then build the app using
phonegap build ios
Then navigate to the folder platform > ios , you will find the xcodeproj, open it in the xcode and test it in the ios devices if necessary else go to the product tab in the xcode and choose the option archive then follow the steps to generate the .ipa file, provided all the necessary certificates,key-files have been installed and updated.
Its not possible to create .ipa file locally without a mac os.

Resources