如何将app程序发布到appstore

author author     2023-04-22     581

关键词:

  即便是免费应用也需要一个开发者账号,注册Developer账户这里就不详细介绍了。然后自然是将App准备好。确保iOS应用程序已经在模拟器(Simulator)中做了全面的测试确认没有已知Bug了。App发布的工作一切准备好了之后,就可以发布应用到App Store了,
  应用发布概括起来需要以下几个流程:
  1、 注册App ID,在Xcode中指定Bundle Identifier
  2. 创建发布证书(Distribution Certificate)
  3. 创建Distribution Provisioning Profile
  4. 用Distribution Profile为应用签名
  5. 打包App6. 在iTunes Connect上传App以上大部分的操作是在Provisioning Portal、XCode、Keychain Access工具和iTunes Connect中完成的。
  上传App必须在Xcode软件里执行(也就是要有MacAir, MacMini等运行Moc OS X Mountain等10.x的系统,最好是10.7等最新版的。XCode这个Object C的集成开发环境目前版本是4.3.2。其他操作都可以在普通浏览器里完成。发布iOS应用程序到App Store - 创建App ID首先给iOS应用程序申请一个App ID,它是你的应用程序的唯一标识。
  登录iOS Developer网站,点击右侧的iOS Provisioning Portal链接,选择App ID。选择创建新app ID。在Description中输入应用的描述信息。
  Bundle Identifier是指应用的代码标识,你可以用公司名.应用名来标识,例如:com.company.demoapp。然后打开X-Code,选择Target > Summary。在Identifier输入框中输入上面注册的Bundle Identifier。
  发布iOS应用程序到App Store - 创建Distribution CertificateiOS应用都有一个安全证书用于验证开发者身份和签名。在Provisioning Portal的Distribution栏目下有详细介绍,
  但总体可以归纳为以下步骤。
  1、打开Keychain Access,在Preferences中关闭OCSP和CRL。
  2. 点击Keychain Access菜单,选择Certificate Assistant > Request Certificate from Authority。
  3. 输入Email地址,选择Saved to Disk和Let me specify key pair information。点击Continue继续。
  4. 选择key size of 2048 bits和RSA algorithm,点击Continue继续。
  5. 然后会在桌面上生成一个.CSR的文件。
  6. 然后进入Provisioning Portal,选择Certificates -> Distribution -> Add Certificate,添加刚才创建的.CSR签名文件。
  7. 在等待审核的时候下载并安装WWDR intermediate certificate。
  8. 刷新页面,然后就可以下载证书了。下载后安装。
  9. 最后一步,打开Keychain Access。选中刚才安装的private key,选择菜单中的Export Item将私钥导出。
  将导出的私钥备份到一个安全的地方,以便以后重装了系统可以还原。发布iOS应用程序到App Store - 创建Distribution Provisioning Profile打开Provisioning Portal,选择Provisioning -> Distribution,选择添加一个新的profile。Distribution Method要选择App Store,App ID需要输入在前面申请的App ID。
  提交后需要等一会儿再刷新这个页面。
  然后就可以下载和安装profile了。安装后profile会被添加到XCode。
  发布iOS应用程序到App Store - 检查签名和生成设置打开XCode,在Build Settings中选择Code Signing。在Release设置上选择刚才申请的Distribution Profile。
参考技术A

    预先准备

    在你开始将程序提交到AppStore之前,你需要有一个AppID,一个有效的发布证书,以及一个有效的Provisioningprofile。下面来看看它们各自的作用。

    Step1:AppID(应用ID)

    AppID是识别不同应用程序的唯一标示符。每个app都需要一个AppID或者app标识。目前有两种类型的App标识:一个是精确的AppID(explicitAppID),一个是通配符AppID(wildcardAppID)。使用通配符的AppID可以用来构建和安装多个程序。尽管通配符AppID非常方便,但是一个精确的AppID也是需要的,尤其是当App使用iCloud或者使用其他iOS功能的时候,比如GameCenter、PushNotifications或者IAP。 

    如果你不确定什么样的AppID适合你的项目,我推荐你读下苹果关于这一主题的文档: TechnicalNoteQA1713。 

    Step2:DistributionCertificate(发布证书)iOS应用都有一个安全证书用于验证开发者身份和签名。为了可以向AppStore提交app,你需要创建一个iOSprovisioningprofile。首先需要创建一个distributioncertificate(发布证书),过程类似于创建一个developmentcertificate(开发证书)。如果你已经在实体设备上测试你的App,那么你对创建developmentcertificate就已经很熟悉了。 

    如果对此不熟悉,建议你读下苹果关于signingcertificates和provisioningprofiles的详细指导。 



    Step3:ProvisioningProfile(配置文件)一旦你创建了AppID和distributioncertificate,你可以创建一个iOSprovisioningprofile以方便在AppStore中销售你的App。不过,你不能使用和adhocdistribution相同的provisioningprofile。你需要为AppStore分销创建一个单独的provisioningprofile,如果你使用通配符AppID,那么你的多个app就可以使用相同的provisioningprofile。 


    Step4:BuildSettings(生成设置)

    配置AppID、distributioncertificate和provisioningprofile已经完成,是时候配置Xcode中target的buildsettings了。在Xcode  Project  Navigator的targets列表中选择一个target,打开顶部的BuildSettings选项,然后更新一下CodeSigning来跟之前创建的distributionprovisioningprofile相匹配。最近添加的provisioningprofiles有时候不会立马就在buildsettings的CodeSigning中看到,重启一下Xcode就可以解决这个问题。 

/iknow-pic.cdn.bcebos.com/63d0f703918fa0ecac7c2e772a9759ee3d6ddb15"target="_blank"title="点击查看大图"class="ikqb_img_alink">/iknow-pic.cdn.bcebos.com/63d0f703918fa0ecac7c2e772a9759ee3d6ddb15?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"/>

配置Target的BuildSettings

Step5:DeploymentTarget(部署目标)

非常有必要说下deploymenttarget,Xcode中每个target都有一个deploymenttarget,它可以指出app可以运行的最小版本。不过,一旦应用在AppStore中生效,再去修改deploymenttarget,你要考虑到一定后果。如果你在更新app的时候提高了deploymenttarget,但是已经购买应用的用户并没有遇到新的deploymenttarget,那么应用就不能在用户的移动设备上运行。如果用户通过iTunes(不是设备)下载了一个更新过的app,然后替代了设备上原先的版本,最后却发现新版本不能在设备上运行,这确实是个问题。

(1)当你决定提高现有app的deploymenttarget时,要在新版本的版本注释中进行说明。如果你提前告知用户,那么至少有一点,你已经尽力阻止问题的发生了。

(2)对于一款新app,我经常会把deploymenttarget设置为最近发布的系统版本。因为新iOS版本发布后,渗透率的增长速度是令人难以置信的。很多人认为提高deploymenttarget会失去大部分市场,这个说法并不准确,比如iOS6,iOS6发布后一个月,超过60%的设备已经进行了更新。但对Android而言,就是另外一回事了,Android用户并不会像iOS用户那样热衷于更新操作系统版本。 


    官方服务
      官方网站官方网站
参考技术B

1、注册开发者账号

开发者账号分为三种,分别是个人开发者账号,公司开发者账号,和企业开发者账号。

2、创建APP ID、配置文件Profiles

创建APP ID,APP ID非常重要,上架流程就是用APP ID关联在一起的。

3、创建iOS发布证书

创建iOS发布证书,下载P12证书文件。

4、打包ipa

利用iOS证书打包ipa,可以使用HBuilder工具打包。

5、iTunes connect创建APP

进入iTunes connect,选择创建APP,输入应用名称、语言、套装ID等,创建APP。

6、上传ipa

APP uploader程序中,提交ipa文件。

7、填写APP信息提交审核

iTunes connect中在我的APP中填写APP的各项信息,提交审核,等待通过即可。

不过App Store审核向来很严格,如果上架被拒,其实还可以选择tf上架,同样是苹果官方的分发渠道,但审核会相对宽松一些ios上架为什么要选择tf上架

参考技术C

iOS APP打包上传到AppStore的最新步骤

因为CSDN经常上不来,所以转载该文章到简书来。
文章里面的图片有些比较旧了,和现在的iTunesConnect网站不太一样,不过不影响整个流程,注意一下就好。

转载自ThomasYB

一、前言:

    作为一名iOS开发者,把辛辛苦苦开发出来的App上传到App Store是件必要的事。但是很多人还是不知道该怎么上传到App Store上

    下面就来详细讲解一下具体流程步骤。

    二、准备:

    一个已付费的开发者账号(可分为):

    账号类型分为个人(Individual)

    公司(Company)

    企业(Enterprise)

    高校(University)四种类型

    每年资费分别为99、99、$299、免费。

    一个已经开发完成的项目。

    三、检查:

    安装的Xcode必须为正式版,beta版本的Xcode不能上传项目到App Store。

    上传使用的 Mac 的 OS X系统必须也是正式版的,beta版本也不行。

    请确认你安装的Xcode是从App Store或者是开发者网站下载的

    因为非官方途径下载的Xcode可能带有XcodeGhost 病毒。如何检查?

    1.png

    四、生成发布证书

    1.打开开发者中心网址:https://developer.apple.com
    2.点击:Account

    2.png

    3.输入账号和密码登录

    3.png

    4.点击:Certificates, Identifiers & Profiles

    专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方

    4.png

    5.点击Certificates生成证书

    选择iOS, tvOS, watchOS

    选择All

    点击右上角新添加证书

    5.png

    6.选择生产证书(选择App Store and Ad Hoc)

    6.png

    1 注意:一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的App Store Ad Hoc 前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。
    2 解决方法:
    3 从共同使用这个账号的人电脑上生成.p12文件,导入自己的电脑。(尽量不要执行下面第2步)
    4 如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)。注意:如果删除一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己的电脑里!
    5 注意:如果你想删除证书,执行下面步骤,否则略过。

    7.png

    8.png

    9.png

    10.png

    7.上传CSR文件去获取证书(CSR文件需要我们到本机钥匙串里去创建)

    在Launchpad的其他里面,点击钥匙串访问弹出如下界面

    11.png

    12.png

    工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书...

    13.png

    14.png

    将CSR文件保存到MAC磁盘的某个位置(这里我选择的是桌面,进行存储)

    15.png

    16.png

    17.png

    然后回到浏览器,点击choose File..

    18.png

    选择创建好的:CertificateSigningRequest.certSigningRequest 文件,点击选取

    19.png

    点击Generate上传证书

    20.png

    跳转到如下界面,点击 DownLoad 下载生成的证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。

    21.png

    22.png

    1 注意:
    2 这个证书只能下载一次。点击下载后,关闭页面后就不能再回到下载页面了。
    3 如果不需要给别的电脑使用,则直接跳过下面附加项,跳转到第五步(绑定Bundle Identifier)

    附加项:生成p12文件在其他电脑上使用这个发布证书

    双击安装证书后,打开钥匙串访问,选择安装的证书右键单击

    23.png

    1 注意:如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件安装。

    导出证书

    24.png

    存储证书

    25.png

    1 注意:存储的文件格式一定要是.p12

    设置密码
    可为证书设置密码,也可不设置密码;如果设置了密码,那么别人安装这个证书的时候就要输入密码,否则无法安装。

    26.png

    27.png

    五、创建App IDs和绑定你的App的Bundle Identifier

    https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action

    28.png

    29.png

    1 注意:
    2 上传App使用的Bundle Identifier,不能使用占位符。
    3 如果你的Bundle Identifier已经在网站上绑定了,如果你又修改了你工程里面这个Bundle Identifier的话,需要重新进入到开发者账号里面绑定。

    30.png

    选择App中包含的服务,默认有两项

    31.png

    32.png

    33.png

    34.png

    六、生成描述文件

    找到Provisioning Profiles ,点击All,然后点击右上角 + 号

    35.png

    选择下面App Store这个描述文件,点击Continue

    36.png

    37.png

    38.png

    39.png

    40.png

    41.png

    七、在App Store开辟空间

    回到Member Center,点击iTunes Connect

    42.png

    43.png

    44.png

    45.png

    46.png

    1 注意:如果都填好以后,可能会告诉你,你的App名称已经被占用,那你只能改名了!

    47.png

    48.png

    49.png

    50.png

    51.png

    52.png

    53.png

    54.png

    55.png

    八、在Xcode中打包工程

    找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和PP文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。

    在Xcode中选择iOS Device(这里不能选择模拟器),按照下图提示操作

    56.png

    57.png

    58.png

    1 注意:如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的Bundle Identifier不一致,去develop.apple.com 上找到你的描述文件在确认下绑定的bundle Identifier和你工程是不是一样的?

    59.png

    60.png

    61.png

    62.png

    63.png

    64.png

    65.png

    66.png

    67.png

    68.png

    69.png

    70.png

    71.png

    72.png

    73.png

    74.png

    75.png

    76.png

    77.png

    78.png

    79.png

    80.png

    81.png

    82.png

    83.png

    等待APP的审核...

    八、补充

    构建版本的方法有两种

    一种是使用 Xcode(上面已经介绍了)

    另一种就是使用一个叫 Application Loader 这个软件:

    84.png

    85.png

    86.png

    87.png

    88.png

    个人觉得还是这个工具好用!



将更新的 iPhone 应用程序发布到 App Store 的说明是啥?

】将更新的iPhone应用程序发布到AppStore的说明是啥?【英文标题】:WhatistheinstructiontoreleaseupdatediPhoneapplicationtoAppStore?将更新的iPhone应用程序发布到AppStore的说明是什么?【发布时间】:2010-01-1304:50:47【问题描述】:我的应用程序... 查看详情

如何在将应用程序提交到 App Store 时修复错误 ITMS 90032、90022、90363、90394?

】如何在将应用程序提交到AppStore时修复错误ITMS90032、90022、90363、90394?【英文标题】:HowtofixERRORITMS90032,90022,90363,90394,onsubmittingapptoAppStore?【发布时间】:2016-02-1914:28:31【问题描述】:我尝试将我的应用程序的新版本提交到AppSto... 查看详情

AppStore:如何在单个应用容器中发布更多应用?

】AppStore:如何在单个应用容器中发布更多应用?【英文标题】:AppStore:Howtopublishmoreappsinasingleappcontainer?【发布时间】:2020-05-0514:45:57【问题描述】:为了遵守AppStore审核指南,我不能发布多个类似的应用程序,因此我需要将具... 查看详情

如何将.app 发布到应用商店?

...何将.app发布到应用商店?【英文标题】:Howtopublish.apptoappstore?【发布时间】:2012-05-1007:41:38【问题描述】:我正在使用SenchaTouchTools打包和共同设计一个webapp,但它输出一个.app文件。不是必须是.ipa才能上传到AppStore吗?或者我可... 查看详情

如何把打包好的app发布到appstore

AppStore上架流程:1、注册开发者账号开发者账号分为三种,分别是个人开发者账号,公司开发者账号,和企业开发者账号。上架AppStore的是个人或公司开发者账号。2、创建APPID、配置文件Profiles创建APPID,APPID非常重要,上架流程... 查看详情

如何将 iPhone 版本添加到已经在 App Store 上的 iPad 应用程序

】如何将iPhone版本添加到已经在AppStore上的iPad应用程序【英文标题】:HowtoaddiPhoneversiontoiPadappwhichisalreadiyontheAppStore【发布时间】:2012-03-1416:55:04【问题描述】:我应该删除iTunes连接中的那些iPad应用程序并提交一个新应用程序,... 查看详情

使用本地通知将我的应用程序提交到 App Store 需要多少证书?

】使用本地通知将我的应用程序提交到AppStore需要多少证书?【英文标题】:HowmanycertificatesrequiredtosubmitmyappusinglocalnotificationontoAppStore?【发布时间】:2017-08-1806:27:13【问题描述】:我正在为我的提醒应用程序使用本地通知。目前... 查看详情

将 iOS 应用程序大小减小到 App Store

】将iOS应用程序大小减小到AppStore【英文标题】:DecreaseiOSApplicationsizetoAppStore【发布时间】:2014-05-2916:45:26【问题描述】:我正在尝试在AppStore中提交一个应用程序,如果可能的话,我需要稍微减少它的内存。我尝试了一种我将... 查看详情

将 iOS 应用上传到 AppStore(上传到 App Store 时出错。)

】将iOS应用上传到AppStore(上传到AppStore时出错。)【英文标题】:UploadiOSapptoAppStore(AnerroroccurreduploadingtotheAppStore.)【发布时间】:2017-12-0608:14:16【问题描述】:完整操作系统更新后,我无法将新版本的应用上传到应用商店。尝试... 查看详情

将更新应用程序发送到 AppStore 并通知用户

】将更新应用程序发送到AppStore并通知用户【英文标题】:sendupdateapptoAppStoreandnotifyusers【发布时间】:2011-01-1023:50:16【问题描述】:我有一个问题。我将应用程序发送到AppStore。当我需要为应用程序发送更新时,如何通知用户应... 查看详情

尽管 Xcode 是最新的,但无法将 iOS 应用程序部署到 App Store

】尽管Xcode是最新的,但无法将iOS应用程序部署到AppStore【英文标题】:CannotdeployiOSapptoAppStorethoughXcodeislatest【发布时间】:2015-08-0303:18:39【问题描述】:我正在尝试将iOS应用部署到AppStore,但出现以下错误;提交到AppStore的应用... 查看详情

iOS,App Store Connect:如何将 2 个应用程序目标部署到应用商店连接?

】iOS,AppStoreConnect:如何将2个应用程序目标部署到应用商店连接?【英文标题】:iOS,AppStoreConnect:Howtohave2targetsofapplicationdeployedtoappstoreconnec?【发布时间】:2018-10-1607:27:38【问题描述】:我想将2个目标部署到应用商店连接。一种... 查看详情

如何从组合的 iOS/Watch Xcode 项目中仅将独立的 Apple Watch 应用程序发布到 App Store

...合的iOS/WatchXcode项目中仅将独立的AppleWatch应用程序发布到AppStore【英文标题】:HowtoreleaseonlyindependentAppleWatchapptoAppStorefromcombinediOS/WatchXcodeproject【发布时间】:2020-12-1304:30:02【问题描述】:我将iOS应用与Watch应用Xcode模板一起使用... 查看详情

如何以不同的 iPhone/ipad 尺寸将我的应用程序上传到 App Store

】如何以不同的iPhone/ipad尺寸将我的应用程序上传到AppStore【英文标题】:HowtouploadmyapptotheAppStoreindifferentiPhone/ipadsizes【发布时间】:2015-03-3117:58:23【问题描述】:我制作了一个新应用程序,但仅针对iPhone5尺寸不使用“自动布局... 查看详情

IBM Worklight:将应用程序上传到 Worklight Server/App Store

】IBMWorklight:将应用程序上传到WorklightServer/AppStore【英文标题】:IBMWorklight:UploadapplicationtoWorklightServer/AppStore【发布时间】:2013-05-2406:15:10【问题描述】:使用直接更新,移动应用程序可以使用新版本的网络资源自动更新。为了... 查看详情

iphone怎么将开发的app发布到appstore上

参考技术Aiphone怎么将开发的app发布到appstore上发布步骤登陆苹果开发者中心:developer.apple.(99美元账号)进入itunesconnect选择ManageYourApps选择AddNewApp填写项目相关信息,不知道怎么填的点击问号查看,BundleIDSuffix需要与上一篇申请发... 查看详情

无法将颤振应用程序部署到 iOS Appstore

】无法将颤振应用程序部署到iOSAppstore【英文标题】:NotabletodeployflutterapplicationtoiOSAppstore【发布时间】:2020-10-1717:14:05【问题描述】:在为iOSDistribution构建应用程序时,我在构建时遇到了以下问题,我在google上尝试了许多与此问... 查看详情

将应用上传到 App Store

】将应用上传到AppStore【英文标题】:UploadapptoAppStore【发布时间】:2015-02-1122:35:31【问题描述】:我已经设置了所有的iTunesConnect内容(快照、描述、标签等)并下载了应用程序加载器,但它要求我提供.app文件,我不知道如何获... 查看详情