App Distribution Guide (一)
This guide contains everything you need to know to distribute an app through the App Store or Mac App Store.
这个guide包含了如何通过app stor或者mac app store来发布一个app。
Get step-by-step guidance for enrolling in an Apple Developer Program and building, testing, and submitting your app.
注册,building,testing,submitting
Configure services that are available only to apps submitted to the App Store or Mac App Store.
配置只能提交到app store或者mac app store的app。
Test your app on multiple devices and system versions, or offer testers a preview of your next release.
Upload metadata about your app so the store can present it to customers.
在多个设备和系统版本上测试你的app。或者提供testers你的下一个release的preview。上传有关你app的metadata这样store就可以呈现给用户了。
Verify that you’ve prepared your app correctly, and submit it to the store.
验证你的app准备无误并且可以提交到store上去了。
Learn how to release and maintain your app after submission.
学习如何在submission后发布并且保留你的app。
You perform these tasks using Xcode features and several web tools available only to members of an Apple Developer Program. Before you use certain app services, such as iCloud and Game Center, you must join an Apple Developer Program. Join a program even if you distribute an application outside of the store so that customers know your application comes from a known source.
在使用app设备前比如icloud和game center,你必须加入一个apple developer program。
At a Glance
This guide explains how to develop, test, submit, and release your iOS and Mac apps. By understanding your tools and the distribution process, you’ll be able to get your new app and updates to your customers faster.
Enroll in an Apple Developer Program to Distribute Your App
Joining an Apple Developer Program is the first step to submit your apps on the App Store and Mac App Store, to distribute iOS in-house apps, or to sign apps that you distribute outside the Mac App Store with a Developer ID. As a member, you have access to the resources you need to configure app services and to submit new apps and updates.
Related Chapter: Managing Accounts (page 18)
Add Services to Your App
Apple provides advanced, integrated services for certain types of apps, such as games and Newsstand apps, and for additional sources of revenue, such as In-App Purchase and iAd Network. These app services require additional configuration—both during development and later, when you submit your app to the App Store or Mac App Store. Good examples are Game Center and iCloud. In this guide, you’ll learn how to add these capabilities to your app.
RelatedChapter: AddingCapabilities(page48),ConfiguringPushNotifications(page76)
Prepare Your App for Distribution
Before you distribute your app for testing or submit it to the store for approval, complete the configuration of your Xcode project. Your final Xcode project should contain required app icons and launch images, contain additional entitlements for app services you enable, and specify which devices and operating systems your app supports.
2015-01-12 | Copyright © 2015 Apple Inc. All Rights Reserved. 12
About App Distribution
At a Glance
RelatedChapter: ConfiguringYourXcodeProjectforDistribution(page23)
Test iOS Apps Across Numerous Devices
If you have an iOS app, make sure you test it not only in iOS Simulator but on all the devices and releases that your app supports. Testing on more than one kind of device ensures that your app operates exactly as you thought it would, no matter which device it’s running on. You can register up to 100 devices per membership year for development and testing. After testing an app yourself, distribute a beta release of your app to testers. You can distribute a beta app yourself or use iTunes Connect to manage beta testing.
RelatedChapters: BetaTestingYouriOSApp(page97),AnalyzingCrashReports(page115)
Submit and Release Your App on the Store
Submitting your app to the App Store or Mac App Store is a multistep process. First, you sign in to iTunes Connect to create an app record and enter necessary information. If you’re selling your app on the store, you also enter the information for your reimbursement in iTunes Connect. In Xcode, you create an archive and sign it with your distribution certificate. Then you upload your app using Xcode or Application Loader. Use iTunes Connect to submit your app to the store. When your app is approved, use iTunes Connect to release it by setting the date when the app will be available to customers.
Related Chapters: Submitting Your App (page 117), Releasing and Updating Your App (page 127), Managing Your App in iTunes Connect (page 128), Distributing Enterprise Program Apps (page 214), Distributing Applications Outside the Mac App Store (page 221)
Distribute Your App Outside the Store
Alternatively, join the iOS Developer Enterprise Program and distribute your in-house applications directly to employees. To distribute a Mac app outside of the Mac App Store, request and sign your application with a Developer ID certificate. If you’re distributing your application outside the store, you follow a slightly different process. You don’t have access to iTunes Connect and some app services so can skip those steps.
加入ios developer enterprise program并且发布你的in-house应用程序直接给employees。为了在mac app store之外发布一个mac app,需要请求并且使用developer id certificate来sign你的应用程序。你不需要访问itunes connect以及其他一些个操作步骤。
2015-01-12 | Copyright © 2015 Apple Inc. All Rights Reserved. 13
About App Distribution
How to Use This Document
RelatedChapters: DistributingiOSDeveloperEnterpriseProgramApplications(page214),Distributing Applications Outside the Mac App Store (page 221)
Maintain Your Certificates, Identifiers, and Profiles
Apple implements an underlying security model to protect both user data and your app from being modified and distributed without your knowledge. Throughout the development process, you create assets and enter information that Apple uses to identify you, your devices, and your apps. Xcode automatically creates many certificates, identifiers, and profiles for you as you need them. Xcode maintains the App IDs and provisioning profiles it creates for you, but not the other assets. During your Developer Program membership, you may maintain various other certificates, identifiers, and profiles yourself.
RelatedChapters: MaintainingYourSigningIdentitiesandCertificates(page145),Maintaining Identifiers, Devices, and Profiles (page 176)
How to Use This Document
How you use this document depends on the type of developer program you join (iOS Developer Program, Mac Developer Program, or iOS Developer Enterprise Program) and your role (team agent, admin, or member). For Mac apps, how you use this document also depends on whether you choose to submit your app to the Mac App Store or distribute it outside of the Mac App Store.
First choose a type of account (individual or company) and a developer program. If needed, create an Apple ID and join a developer program, as described in Managing Accounts (page 18). If you enroll in a developer program as an individual, you’re the team agent for a one-person team. If you enroll in a developer program as a company, you’re the team agent and can invite other people to join your team, as described in Inviting Team Members (page 138). You specify whether a person is a team admin, who can perform most of the same tasks as a team agent, or a team member who can’t create assets in Member Center. To learn more about team roles, read About Apple Developer Program Team Roles and Privileges (page 135).
Then refer to the tables in this section for the tasks you perform depending on your role and developer program membership. (Refer to the glossary for the definitions of terms used in this guide.)
If you’re a team agent or admin and want to submit your app to the App Store or Mac App Store:
2015-01-12 | Copyright © 2015 Apple Inc. All Rights Reserved. 14
To learn how to |
Read |
|
Add your Apple ID to Xcode |
Adding Your Apple ID Account in Xcode (page 20) |
About App Distribution
How to Use This Document
To learn how to |
Read |
|
Set your bundle ID and assign your project to a team |
Configuring Identity and Team Settings (page 26) Configuring Your Xcode Project for Distribution (page 23) |
|
Configure app services |
Adding Capabilities (page 48) |
|
Launch your app on devices |
Launching Your App on Devices (page 88) |
|
Perform final configuration steps before distributing your app |
Configuring Your Xcode Project for Distribution (page 23) |
|
Test your iOS app on different devices |
Beta Testing Your iOS App (page 97) |
|
Fix problems during testing |
Analyzing Crash Reports (page 115) |
|
Upload your app to iTunes Connect for approval |
Submitting Your App (page 117) |
|
Release your app by setting the availability date |
Releasing and Updating Your App (page 127) Managing Your App in iTunes Connect (page 128) |
|
Maintain your Apple Developer Program assets |
Maintaining Your Signing Identities and Certificates (page 145) Maintaining Identifiers, Devices, and Profiles (page 176) |
|
Fix issues with your code signing assets |
Troubleshooting (page 234) |
If you’re a team agent or admin for a company:
If you’re a team member for a company who is developing an app for the App Store or Mac App Store:
2015-01-12 | Copyright © 2015 Apple Inc. All Rights Reserved. 15
To learn how to |
Read |
|
Add team members and assign roles for company accounts |
Managing Your Team (page 135) |
To learn how to |
Read |
|
Add your Apple ID to Xcode |
Adding Your Apple ID Account in Xcode (page 20) |
About App Distribution
How to Use This Document
To learn how to |
Read |
|
Set your bundle ID and assign your project to a team |
Configuring Identity and Team Settings (page 26) Configuring Your Xcode Project for Distribution (page 23) |
|
Request your development certificate and ask your team agent or admin to approve it |
Approving Development Certificates (page 140) |
|
Ask your team agent or admin to register your device |
Registering Team Member Devices (page 142) |
|
Launch your app on devices |
Launching Your App on Devices (page 88) |
|
Fix issues with your code signing assets |
Troubleshooting (page 234) |
If you’re a team agent or admin in the iOS Developer Enterprise Program:
If you’re a team agent and want to distribute your Mac application outside of the Mac App Store:
To learn how to |
Read |
|
Manage your certificates and distribute your app |
Distributing Enterprise Program Apps (page 214) |
To learn how to |
Read |
|
Perform final configuration steps before distributing your app |
Configuring Your Xcode Project for Distribution (page 23) |
|
Create a Developer ID-signed application |
Distributing Applications Outside the Mac App Store (page 221) |
|
Request additional Developer ID certificates |
Requesting Additional Developer ID Certificates (page 154) |
For Mac apps, if you select None as the distribution method, as described in Choosing a Signing Identity for Mac Apps (page 29), you don’t need to read this guide.
2015-01-12 | Copyright © 2015 Apple Inc. All Rights Reserved. 16
About App Distribution
See Also
See Also
This guide assumes you are already familiar with the software and tools you use to write code. If not, start by reading a number of platform-specific tutorials. Next, read the technology overview documents followed by the appropriate human interface guidelines for your platform, and most important, the guidelines for submitting your app to the store.
iOS |
Mac |
|
To get started . . . |
Start Developing iOS Apps Today App Distribution Quick Start |
Start Developing Mac Apps Today App Distribution Quick Start |
To learn more about technologies . . . |
iOS Technology Overview |
Mac Technology Overview Mac App Programming Guide |
To learn about the user interface guidelines . . . |
iOS Human Interface Guidelines App Store Review Guidelines for iOS Apps |
OS X Human Interface Guidelines App Store Review Guidelines for Mac Apps |
To learn more about tools . . . |
Xcode Overview |
Xcode Overview |
To learn about tools for large teams. . . |
Xcode Continuous Integration Guide
Testing with Xcode |
Xcode Continuous Integration Guide
Testing with Xcode |
For more information on the app review process, go to App Review.
Managing Accounts
The Accounts preferences pane is the central location for managing all of the accounts your projects will use, including your Apple ID used to manage Apple Developer Program assets. By adding an Apple ID account, joining an Apple Developer Program, and assigning your project to a team, you provide Xcode with the credentials to manage your certificates, identifiers, and profiles. You’ll learn how to manage your Apple Developer Program accounts in this chapter.
你提供xcode credentials来管理你的certificates,identifiers和profiles。在这个章节将会学习如何管理你的开发者program accounts。
xcode->preferences->accounts用来管理所有应用程序用到的accounts。包括用来管理apple developer program assets的apple id。通过添加一个apple ID账户,加入一个apple developer program并且分派你的应用程序到一个team中去。
You Enroll as an Individual or a Company
你可以注册为一个个体或者公司。
During the enrollment process, you choose whether to enroll as an individual or a company. If you enroll as an individual, you’re considered a one-person team, one who can perform all the tasks described in this guide except manage multiple team members.
注册时候可以选择是否这册为个体或者公司。如果你注册为个人,你会被认为是one-person team。可以执行所有的任务除了不能管理多个team members。
During enrollment, you’re asked for basic personal information, including your legal name and address. If you enroll as a company, you provide a few more things, such as your legal entity name and D-U-N-S Number, as part of the verification process. When your information is verified, you review license agreements, purchase your program on the Apple Online Store, and receive details on how to activate your membership.
If you enroll as a company, you may add other persons to your team and grant them privileges to manage your account. All team members must be Registered Apple Developers. Team members have different privileges, so depending on your role, you may not be able to perform all the tasks in this book. If you enroll in the iOS Developer Enterprise Program, your team is automatically treated as a company.
当你注册为一个公司时,你可以添加其他人到你的team中并且授权他们来管理你的账户。所有的team memebers必须被注册为apple developers。team number有不同的权限依赖于你的角色。如果你在ios developer enterprise program里注册,你的团队会自动被看为一个公司。
To learn about the different roles and privileges, read About Apple Developer Program Team Roles and Privileges (page 135).
You Can Join Multiple Teams
You can use an Apple ID to join multiple teams but with some restrictions.
Registered Apple Developers receive an Apple ID that identifies a person, not a membership in an Apple Developer Program. The Apple ID must have a unique email address associated with it that’s verified by Apple. You use your Apple ID to sign in to Member Center and iTunes Connect.
A single Apple ID can be associated with multiple Member Center teams. Using the same Apple ID, you can enroll as an individual and join other teams. However, you can only be associated with a single iTunes Connect team. Consequently, developers should create another Apple ID for different individual or company accounts that they want to manage separately in iTunes Connect.
你可以使用一个apple id来加入多个团队。
注册的apple developers会收到一个apple id来标示一个人而不是在一个apple developer program中的成员。apple id必须有一个独一无二的通过apple认证的邮箱地址。你使用你的apple id来登录你的member center和itunes connect。
一个apple id可以关联多个memeber center teams。使用同样的apple id,你可以这册为个体并且加入其他的团队。尽管如此但是,你只能关联一个itunes connect team。因此,developers需要为不同的个体或者公司账户来创建其他的apple id来分别在itunes connect中进行管理。
Emails from Apple Contain Further Instructions and Welcome You
When you enroll in an Apple Developer Program or are invited to join a team, you receive a series of emails. For example, if you register as an Apple developer, Apple sends you an email requesting that you confirm your email address. Following the instructions in these emails promptly will streamline the enrollment process.
Adding Your Apple ID Account in Xcode
Your team may join multiple Apple Developer Programs. For example, if you initially join the iOS Developer Program, you can add the Mac Developer Program to your team account.
To add a developer program to your team
你的团队可以加入多个apple developer programs。例如,如果你最初加入了ios developer program,你可以将mac developer program加入到你的团队账号中去。
1. Choose Xcode > Preferences.
-
Click Accounts at the top of the window.
-
Select your Apple ID in the left column.
-
Click Join in the row of the team and column of the program you want to join.
For example, click Join under Mac to add the Mac Developer Program. Your default browser displays the developer program enrollment webpage.
In your browser, click “Enroll now” and follow the instructions.