The relationship of iOS development certificate, description file, bundle ID

Source: Internet
Author: User

Http://www.jianshu.com/p/21ebca8cadf6

In order to control the development and release process of the application, Apple has developed a very complex set of mechanisms. The key words are: Personal developer account, Enterprise Developer account, bundle ID, Development certificate, Release certificate (also called "Production Certificate"), development profile, release profile, push certificate, etc... It's hard for junior developers to understand the relationship and the role. Below is a detailed description of the key elements listed above and their relationship.

1. Developer Account

The developer account is actually an Apple ID, but to become a developer, you need to activate development permissions at the Apple Developer Center. The activation developer account is divided into three types, individual, company and enterprise. There are some differences between the three accounts, and the following table is a comparison of their main differences:

Account Type Support Applestroe Shelves number of test devices Application Fee application needs
Personal Is 100 99$
Company Is 100 99$ Deng's Code
Enterprise Whether Unlimited 299$ Deng's Code

So if the application needs to Appstroe, create an individual or company type of account, if only want to internal publishing, you can apply for business account. The difference between a personal account and a company account is that a company account can invite multiple accounts, and they can share resources with you to develop the app without always asking you for your account.

2. Bundle ID

The bundle ID can be translated into a package ID or an app ID or app ID, which is a globally unique identifier for every iOS app. No matter how the code changes, the icon and app name change, as long as the bundle ID has not changed, the iOS system thinks this is the same application. Each development of a new application, first of all need to member Center->identifier->app IDs to create a bundle ID. However, bundle IDs are divided into two types:

    1. Explicit App ID (explicit app ID), the general format is: Com.domainname.appname. This ID can only be used on one app. Each new application is created with one.
    2. Wildcard App ID (wildcard app ID), the general format is: com.domainname.*. This ID can be used in multiple applications, although convenient, but the use of this ID app can not use the notification function, so it is not commonly used.
3. IOS certificates

iOS certificates is a certificate. Its role is to prove that your Mac has the ability to develop or publish apps under a developer account. And certificates are divided into two, one is the development of certificates, also known as development certificate; The other is to publish a certificate or production certificate, the English name production certificate.

    • Development certificate
      Developing a certificate is something that proves that your Mac has the development and the real machine to debug your program. But each certificate is associated with a developer account, that is, you can only use this certificate to develop the application under this account, it is through the bundle ID to know whether the application is their own account. So, every time you develop an application for a developer account, you need a development certificate created by this account.
    • Production Certificate
      A production certificate is the right to prove that your Mac has a publishing app. When archive to AppStore, there must be a production certificate, otherwise the upload is unsuccessful.

    • Root certificate
      Whether you are developing a certificate or a production certificate, you must derive from the root certificate. The root certificate is the certificate generated by the root Mac, and the certificate saved on Menber Center is the root certificate, it can only be installed on the Mac that created it, and the other development Mac must export the certificate from that Root Mac. That is, all child certificates can only be derived from the root certificate.

4. IOS Provisioning Profiles

IOS Provisioning Profiles is also called a description file, which is used to identify whether a device has permission to install an app. The description file is divided into development profiles and release profiles. The release profile is also divided into temporary release profiles and official release profiles.

      1. Development profiles (Develop provisioning profile)
        Develop the description file, create it needs, bundle ID + 开发证书 + 测试设备(在devices中添加) compile the time must correspond to three, otherwise the compiler will error.
      2. Temporary release profile (distribution ad hoc)
        Temporary release profiles are used to publish on limited devices. It needs to be created bundle ID +发布证书+发布设备 , and the compilation must correspond to three.
      3. Official release profile (distribution Appstore/distribution ad house)
        The official release profiles for individual accounts and enterprise accounts are different. Because the personal account is posted on the Appstrore, so created is the distribution AppStore profile, and the enterprise account can only be published internally, so created called distribution AD House description file. But the things they need to create are the same: bundle ID + 发布证书 . Because they are installed on an indeterminate device, there is no need to select the device.

The relationship of iOS development certificate, description file, bundle ID

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.