Bacancy Bacancy
  • Customers

      Fortune 500 Clients

      Verizon
      Verizon
      Franklin Templeton
      Franklin Templeton
      The Container Store
      The Container Store
      KPMG
      KPMG
      Academy Sports & Outdoors
      Academy Sports & Outdoors
      Shell
      Shell
      Bangkok Bank Ltd
      Bangkok Bank Ltd
      The Children's Place
      The Children's Place
      Edward Jones
      Edward Jones
      United Parcel Service
      United Parcel Service
      AdviceWorks
      AdviceWorks
      NatWest Markets
      NatWest Markets
      Bridgestone
      Bridgestone

      Technologies

      React JS VueJS Angular JS React Native Flutter Full Stack
      Ruby on Rails Node JS Golang AI & ML Data Science Java
      Python Salesforce DevOps Block Chain Mobile App Embedded & Hardware
      Explore All
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
  • what we do

      Experience

      Digital Workplace Services Product Enhancement

      Insights

      AI & Automation Data Analytics

      Innovate

      Blockchain Software Engineering Services Internet of Things (IoT) Data Science Artificial Intelligence Machine Learning

      Accelerate

      Cloud - Bacancy Combalt Digital Process Automation Open Source Microsoft Dynamics Salesforce

      Assure

      Quality Assurance IT Staff Augmentation

      Embedded & Hardware

      Product Engineering Analog Design Services FPGA Engineering Service Wireless Design Embedded Software Design

      not list

      Hardware Engineering Power Engineering IoT Hardware
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
  • who we work with

      Industries

      Banking Financial services & Insurance Startups Oil & Gas

      not list

      Healthcare Life Science Real Estate & Construction Logistics
      bacancy

      Let’s grow together Partner with us

      get quote
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
  • about us

      Culture

      Agile Mindset Bacancy Values Bacancy Culture

      About Company

      About Us Leadership Team Awards & Recognition Infrastructure

      not list

      Customer Reviews Our Locations Partnership Media Coverage

      WE ARE

      GREAT PLACE TO WORK - CERTIFIEDTM

      Building and sustaining High-Trust, High-Performance CultureTM

      Bacancy Great Place to Work
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
  • technology

      Front End

      Angular Reactjs Vue.js UI/UX

      Platforms

      MS Dynamics Salesforce

      Back End

      Ruby on Rails Node.js Golang Laravel .NET Java Python

      Mobile

      React Native Flutter Android iOS

      Cloud

      AWS DevOps

      QA

      Automation Testing Software Testing

      Embedded & Hardware

      Embedded
      bacancy

      World-class expertise,Delivered

      get quote
      Explore All
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
  • PRODUCTS

      EV Products

      Battery Management System Motor Controller AC Charger Explore All

      not list

      CCS2 Controller DC Fast Charger AC Charge Controller
      bacancy

      Let’s grow together Partner with us

      get quote
      skype-icon

      Skype ID

      bacancy
      gmail-icon

      Email Us

      [email protected]
      call-yellow-icon

      USA

      +1 347 441 4161
      wp-icon

      Canada

      +1 416 907 6738
hire developers

Bacancy

Bacancy represents the connected world, offering innovative and customer-centric information technology experiences, enabling Enterprises, Associates and the Society to Rise™.

12+

Countries where we have happy customers

1050+

Agile enabled employees

06

World wide offices

10+

Years of Experience

05

Agile Coaches

14

Certified Scrum Masters

1000+

Clients projects

1458

Happy customers

  • Customers
      Technologies
      • React JS
      • Angular JS
      • Vue JS
      • Node JS
      • AI & ML
      • Explore All
      Fortune 500 Clients
      • Verizon
      • The Container Store
      • KPMG
      • Academy Sports & Outdoors
      • Bangkok Bank Ltd
      • The Children's Place
      • Edward Jones
      • Franklin Templeton
      • AdviceWorks
      • NatWest Markets
      • Bridgestone
      • United Parcel Service
  • What we do
      Experience
      • Digital Workplace Services
      • Product Enhancement
      Insights
      • AI & Automation
      • Data Analytics
      Innovate
      • Blockchain
      • Software Engineering Services
      • Internet of Things (IoT)
      Accelerate
      • Cloud - Bacancy Combalt
      • Digital Process Automation
      • Open Source
      • Microsoft Dynamics
      • Salesforce
      • Service Experience Transformation
      Assure
      • Testing
      • Resource Augmentation
      Embedded & Hardware
      • Product Engineering
      • Analog Design Services
      • FPGA Engineering Service
      • Wireless Design
      • Embedded Software Design
      • Hardware Engineering
      • Power Engineering
      • IoT Hardware
      • AL/ML
  • who we work with
      Industries
      • Banking Financial services & Insurance
      • Startups
      • Oil & Gas
      • Healthcare Life Science
      • Real Estate & Construction
      • Logistics
  • About Us
      About Company
      • About Us
      • Leadership Team
      • Awards & Recognition
      • Infrastructure
      • Our Locations
      • Partnership
      Culture
      • Agile Mindset
      • Bacancy Values
      • Bacancy Culture
  • Technology
      Front End
      • Angular
      • Reactjs
      • Vue.js
      • UI/UX
      Platforms
      • MS Dynamics
      • Salesforce
      Back End
      • Ruby on Rails
      • Node.js
      • Golang
      • Laravel
      • .NET
      • Java
      • Python
      Mobile
      • React Native
      • Flutter
      • Android
      • iOS
      Cloud
      • AWS
      • DevOps
      QA
      • Automation Testing
      • Software Testing
      Embedded & Hardware
      • Embedded
      Explore All
  • Products
    • Battery Management System
    • Motor Controller
    • CCS2 Controller
    • AC Charger
    • DC Fast Charger
    • AC Charge Controller
    • Explore All
  • Careers
  • Work @ Bacancy
  • Blogs
  • Resources
  • Customer Reviews
  • Contact
  • Get Quote
iOS APP for Development

12 Simple Steps to Prepare your iOS App for Development and Distribution

Jayesh Thummar
Jayesh Thummar Software Engineer
Last Updated on July 27, 2022
January 3, 2020 9 min read

So, if you are developing an iOS, then here is the list of things that you should take into consideration. Please, go through this comprehensive iOS app development and distribution guideline to have a clear understanding on how to do it correctly.

Steps:

(1) Get BundleID
(2) Get UDID of your iPhone
(3) Create CSR File
(4) Create a development certificate
(5) Create a distribution certificate
(6) Register (Create) app id
(7) Register Your device
(8) Create a development profile
(9) Create a distribution profile
(10) Download and install certificates & profile
(11) Export and share with other mac
(12) Generate .ipa file for development, distribution

Step 1: Get Bundle Identifier

Create a new project in Xcode and find your application’s bundle identifier, bundle identifier is a combination of the reverse domain name notation of your website and applications name.

i.e com.bacancy.MyApp

Get Bundle Identifier

Step 2: Get UDID of Your iPhone

Connect your iPhone device to your Mac and open iTunes and select your device from the right-side devices list. Now click multiple times until you get UDID and just right-click on it and copy it.

Get UDID of Your iPhone

Step 3: Create CSR File

Now open keychain access in your mac and go to top menu (keychain access->certificate assistant->request a certificate from a certificate authority)

Create CSR File

Then you can add your user email address, common name, and CA Email Address, and make sure to select save to disk and then click on continue and enter the name of the file as you want and select destination folder when you want to save it.

certificate assistant

Step 4: Create a Development Certificate

Now open your apple developer account in your web browser https://developer.apple.com and login using your apple ID and go to Certificates, Identifiers & Profiles.

Create a Development Certificate

Click on blue plus + icon near left Certificates title and select Either Apple Development or iOS App Development, here Apple Development is for xcode 11 or newer version, then click on continue,

Certificates title

Here you can select our certificate signing request file which we are creating in step 3, then click continue

certificate signing request

So, you will get a preview (name, type, expiry date and owner info) of your development certificate, that you can simply download.

download your certificate

Step 5: Create a Distribution Certificate

Here again, click on blue plus + icon near left Certificates title and select Either Apple Distribution or iOS Distribution(App Store and Ad Hoc) , here Apple Distribution is for Xcode 11 or newer version, then click on continue, and just follow the same process as creating development certificate.

Create a Distribution Certificate

Step 6: Register (Create) App Id

Click on blue plus + icon near left Identifiers title and select App IDs

register app app

In the next step, you can select your app type Either iOS, tvOS, watchOS or macOS, here we are creating an iOS app as we have selected iOS, then add your app name in the description field.
In the screenshot below, I have added MyApp.

Add bundleID which we have created in first step com.bacancy.MyApp, then select capabilities that you want to enable into your app Like, PUSH notifications, applePay, appGroup etc.

Click continue so you will get a preview of your app ID, and just click on the register so your app will be registered.

register an apple ID

Step 7:Register Your device

Now goto devices list and click on blue plus + icon near left device title.

If you want to add a device one by one then select Register a Device option, here you can select the platform, then add device name.

If you have multiple device lists then select the second option Register Multiple Devices, after doing this you will get a preview of your device details, like device name, UDID, model and device type, now click on register button so your device will register for future use in development profile.

Note: – As you have limitation to register new devices, you can just register 100 devices of each type (iPhone, iPad, iPod), and If you remove a registered device from your account, it will count against your device limit.

Register Your device

Step 8: Create Development Profile

Go to Profiles list and click on blue plus + icon near left Profiles title.

Here there are three options for developer profile iOS, tvOS, and macOS. We have selected iOS app development for our applications because we use this app in iPhone devices, then simply click continue,

Create Development Profile

Here you can select your app ID, which we have created in step 6, you can search it by your application’s bundleID

App ID in combinations of name of your app + your team ID + BundleID of your Applications., then click on continue

App ID in combinations

Now you can select a development certificate that we have created in step 4. In your XCode, if you checked Automatically manage to sign in signing & capabilities section, so XCode will create development certificate and provisioning profiles automatically into your apple developer account if you don’t know which certificate you have created then Select All and click continue,

 Automatically manage to sign

In this step, you have to select devices in which you want to debug or run your app, and click continue

run your app

For the last step of your profile name, you can give any name like Dev_MyApp, then click continue so you will get a preview on your development profile, you can also download it.

 Dev_MyApp

Step 9: Create Distribution Profile

You can follow the same process as creating a development profile, just in the first step select app store for making app live. If you want to test your app into your registered device with a distribution certificate, then select Ad Hoc

Ad hoc will be used to test PUSH notifications in distribution mode.

Create Distribution Profile

Then select your appID and distribution certificate, which we have created in step 6 and 5 simultaneously. Make sure to give name(Distri_MyApp) of your distribution profile, then click continue and download it.

Step 10: Download and install certificates and profile

Now we have four items that we need to install open your download folder and see there are two profiles and two certificates, you can double click on each file one by one so it will install into your keychain.

Download and install certificates and profile

Now open your project, select target->signing & Capabilities and uncheck automatically manage to sign, then select provisioning profile (Dev_MyApp) or distribution Profile (Distri_MyApp) which we have created in step 8 and 9.

signing & Capabilities
signing & Capabilities

Step 11: Export and Share with Other Mac

Open your keychain access and select My certificates into the left pane, here you can see your certificates with a key. You can expand any certificate and see its private key if you have only download development or distribution profile and install without its certificate so you will see only profile without the private key. And without private key your exported. p12 will not work in another mac.

How to Export?

Just select both certificate and private key and right-click on it so you will get the option to Export it, you can click on it so you will get save option where you want to save.

Now just gave any name like dev_MyApp for development or Distri_MyApp for distribution and destination folder, and click on save button so one popup will appear on your screen for certificate password, gave the password and verify password and press Enter so that you will get .p12 file.

This. p12 file you can share with any other mac and just double click on it so it will install on that mac.

Step 12: Get .ipa File for Development & Distribution

After completing step 10, set version and build number, then select the generic iOS device as shown in the below screenshot.

 Get .ipa File for Development & Distribution

Clean the project by command + shift + k, and then build the project by command + b. Once this process is done without any error, go to the top menu product->archive, so it takes few minutes to create an archive, once archive is done, Xcode will automatically open app organizer window if after archive success you didn’t see app organizer window then open it manually from menu window->organizer

Xcode

Now you just click on Distribute App in right side archive information, so you will get the option to choose distribution methods, as shown in the below screenshot, here you can select a development option for sharing build to test in registered devices, which are included in app development profile. If you want to create a distribution IPA file then select the app store connect.

 app store to connect.

Click next, so you will get another window to choose app thinning and additions option. Here app organizer will automatically select development or distribution certificate, now you have to select development or distribution profile into the dropdown, if you didn’t see your profile in the list so you can either select or download it by selecting into last two options, and then click next so organizer will create your .ipa file

create your .ipa file

Once this is done you will directly get output window to export IPA file as below the first screenshot,
If you are selecting distribution certificate and profile into you XCode (step 10) and app organizer, so will get two option one is upload and another one is export as below the second screenshot.

Now click on export and give the destination where you want to export it, so it will create one folder into your destination path as the name “MyApp 2019-12-24 14-31-07”(project name date and time)

MyApp
MyApp

Now go to your destination path and open that folder, here you will see you .ipa file look like in below screenshot.

destination path

Now create a share link and from diawi (https://www.diawi.com) or beta family-supersend (https://betafamily.com/supersend) and share with your testers to test it.

Congratulations, your app is successfully developed for distribution.

Things to Take into Consideration:

  • Make Sure, that you are logged into you XCode using your Apple ID
  • You can’t create a sharable link of distribution IPA file; you can only upload on Appstore by application loader or directly from app organizer

Expand Your Digital Horizons With Us.

Start a new project or take an existing one to the next level. Get in touch to start small, scale-up, and go Agile.


Or
E-mail us : [email protected]

Your Success Is Guaranteed !

Related Articles

New Features in iOS 15 and Swift 5.5
Archita Nayak
Jaini Darji

April 13, 2022

iOS

New Features in iOS 15 and Swift 5.5

By : Archita Nayak & Jaini Darji

Introduction At Worldwide Developers Conference 21, Apple has overcome many limitations by announcing some important features for developers. Apple has made sure while introducing the...

7 Minute Read
Read More
Unit Testing Using Mockito in Android
Archita Nayak
Mansi Shah

March 25, 2022

Application Development

Unit Testing Using Mockito in Android

By : Archita Nayak & Mansi Shah

Introduction Nowadays mobile applications are getting complex functionalities & bigger in size, that’s why writing test cases is very important to refine code and make...

5 Minute Read
Read More
Download and Restrict Video Files in android app
Archita Nayak
Mohd Zeeshan

January 13, 2022

Application Development

Download and Restrict Video Files in Android App

By : Archita Nayak & Mohd Zeeshan

Introduction A couple of months back, I came across a client requirement who wanted to build a feature to download and restrict video files in...

5 Minute Read
Read More
india India (HQ)

Corporate House
15-16, Times Corporate Park, Thaltej, Ahmedabad, Gujarat 380059

USA USA

601 Brickell Key Drive, Suite 700, Miami, Florida, 33131, USA

canada Canada

71 Dawes Road, Brampton, On L6X 5N9, Toronto

australia-flag Australia

351A Hampstead Rd, Northfield SA 5085

UAE UAE

1608 Clover Bay, Business Bay, Dubai, UAE. PO Box 62049

sweden Sweden

Junkergatan 4, 126 53 Hagersten


Great Place to Work
Get in Touch
call-yellow-icon

Contact Number

+1 347 441 4161

gmail-icon

Email Us

[email protected]


  • Bacancy Behance
  • Bacancy Uplabs
  • Bacancy Pinterest
  • Brochure
  • Quality Assurance
  • Resources
  • Tutorials
  • Customer Reviews
  • Privacy Policy
  • FAQs
  • Contact Us
  • Sitemap
  • Employee
bacancy google review 4.6
bacancy google review
bacancy glassdoor review 4.5
bacancy glassdoor review
bacancy clutch review 4.8
bacancy clutch review
bacancy goodfirms review 4.5
bacancy goodfirms review
X

Get Our Newsletter

Be The First To Get The Latest Updates And Tutorials.

Request A Free Consultation

Before You Go...

Try our free consultation to visualize the best outcome of your business ideas.

INSTANT 30 MIN FREE CONSULTATION CALL