天道酬勤,学无止境

iOS Ad hoc distribution - About Apple certificates

I want to AdHoc test an application. My client owns an Apple account and I am member of the team (he added us).

We want to use this technique http://www.innerfence.com/howto/install-iphone-application-ad-hoc-distribution to send the ipa and mobile provision to our client.

The problem is that if I download my client's provisioning profile to generate the ipa it is not paired with any private key in my XCode (valid signed identity not found).

I am completely lost. How can I fix this?

What I want to do is: generate an .ipa and send it with my client's .mobileprovision file.

评论

You will need your client's public/private key pair belonging to their Distribution certificate. The key pair is probably currently only available on the computer that they used to create their certificate.

They will need to perform the following steps to send you their key pair:

  1. Open Keychain Access (in /Applications/Utilities)
  2. Navigate to 'My Certificates' in the bottom left.
  3. They should now see a certificate named 'iPhone Distribution: xxxxxxx', where xxxxxx is the name of their company.
  4. Right-click the certificate and select 'Export...'. It should be exported as a Personal Information Exchange (.p12) file and they will have to enter a password to encrypt it.
  5. They can now send you this file together with the password. If security is a concern they can e-mail the file to you and give you the password over the phone (for example).
  6. On your computer you can simply double-click the .p12 file and voilá you'll now have their certificate and can create the AdHoc build. :)

Good luck!

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • Xcode 6 GM创建档案(Xcode 6 GM creating archive)
    问题 我正在尝试创建一个存档.ipa,以通过testflight进行分发。 将创建存档,然后选择“导出”,然后选择“临时”,然后选择“我的团队”。 但是,这时我得到下面的屏幕。 我知道我的证书是有效的,因为我在下载xcode 6 GM之前大约2个小时在xcode 5中创建了一个具有不同配置文件的.ipa。 我也知道我的配置文件有效并且已连接到所述证书。 事实是,在xcode 5中,它并没有要求一个团队。 它只要求提供配置文件。 现在,出口要求我提供一个团队。 另外,我当然拥有有效的iOS发行证书。 我在构建设置中使用它对我的应用程序进行签名。 似乎是一个奇怪的错误 任何帮助将不胜感激。 回答1 您必须将“代码签名身份”更改为“ iOS Distribution” 首先,应了解该错误消息是BS重新设计的消息,并且与此处发生的情况不准确。 浪费这么多时间不是你的错。 这是苹果工作流程中的1个小缺陷的示例,它浪费了数十万美元的开发人员时间。 但是,我们该怎么办? 确保在Developer Member Center中具有用于Ad Hoc分发的VALID Provisioning Profile,并将其下载到Mac。 (这是一个重要的细节,因为在Xcode 6之前您可能没有其中一个,因为它不是必需的。) 通过将* .mobileprovision文件拖到扩展坞中的Xcode图标来打开它。
  • 将临时应用提交到Appstore / iTunesConnect(Submitting Ad-hoc app to Appstore / iTunesConnect)
    问题 我知道如何使用Appstore移动供应来签署应用程序,以及如何使用Appstore移动供应来重新签署Adhoc签名的IPA。 这不是我的问题。 我的问题是,您能否将Adhoc签名的IPA提交到Appstore / iTunesConnect,并使其通过Apple验证并最终通过Appstore分发。 为什么? 这样我就不必在每个Adhoc签名的发行候选IPA上存储一个由Appstore签名的IPA冗余,也不必执行需要Mac机器的重新签名的额外步骤。 使用Application Loader时,它能够发现所有愚蠢的小错误,例如缺少图标和启动图像,但是即使我通过Application Loader上传Adhoc签名的IPA,它也不会抱怨非Appstore移动设置(非常容易验证,就像图标一样)。 我在测试中还发现,当您使用由Appstore签名的IPA(除非通过Appstore分发,否则不应该将其安装在设备上),可以将其安装在测试设备上,前提是该设备已经具有Adhoc供应配置文件(相同的AppID,相同的分发证书)。 因此,这让我认为Apple在通过Appstore进行分发时只是去除了移动服务。 在将近3年前,存在一个类似的问题(已关闭),但是OP确实提供了答案,但从未提供过答案:将应用程序以adhoc profile提交到appstore 。 我希望从那时起有人实际尝试过证实的结果
  • 创建iOS“内部和临时”证书选项已禁用(Create iOS “In-House and Ad Hoc” certificate option disabled)
    问题 我的客户的iOS内部配置配置文件即将在2周内过期。 因此,要续订它们,我想创建一个新的内部证书。 但是,当单击“添加”时,“内部和临时”选项将被禁用。 这可能是什么原因? 我昨天续签了客户的企业许可证。 可能需要一些时间才能再次创建内部证书吗? (在我所有其他客户(非企业用户)的帐户上都可以使用) 回答1 我是公司企业帐户的代理,您的问题主要如上所述:存在两个企业证书。 我有点困惑的地方是为什么您要让多个人担任您的探员。 苹果公司设置企业帐户和门户的方式是,要有一个公司范围的代理人可以完全控制该企业分发证书,并且将其与他/她的CSR /私钥配对。 如果您确实想正确执行此操作,则需要让负责该帐户的实际代理人持有,并让他导出用于签署CSR和发行证书的私钥,以便您可以针对它进行开发。 如果您不是为企业部署进行最终生产构建的实体,我建议您与代理更好地协调工作,因为他可能有一个您不知道的计划。 关于多个证书,Apple一年多以前就开始这样做,这样您就可以顺利地转换到应用程序中的新发行证书,而不必费力地同时更新以前单个证书上的所有应用程序。 最后要注意的一点是,尽管证书有效期为3年,但您的配置文件仍将在12个月内过期,以确保您的客户适当地安排了更新和维护的节奏。 随时向我提出任何问题。 祝你好运! 编辑企业概述开发人员角色 代理人角色是指一个人充当该公司的网守。
  • Xcode 6-如何为Ad-Hoc分发选择签名证书/设置配置文件?(Xcode 6 - How to pick signing certificate/provisioning profile for Ad-Hoc distribution?)
    问题 要将应用分发给我们的测试人员,我们使用Xcode,我们使用以下过程进行操作: 存档申请分发临时广告选择配置文件将.ipa保存到文件夹 但是使用Xcode 6时,此工作流程有所更改。 我仍然可以选择即席分发选项,但是无法选择所需的配置文件。 这使我们无法控制使用哪个签名证书和配置概要文件配置(我们使用推送通知)。 默认情况下,使用iPhone distribution签名身份,并生成某种XC Ad Hoc iPhone distribution配置文件,如下图所示: 如果单击预配配置文件附近的箭头,它将打开包含预配配置文件的文件夹。 所以我的问题是: Xcode 6中是否可以选择用于Ad Hoc分发的配置文件? 谢谢! 回答1 我遇到了同样的问题,使用命令行“ xcodebuild”工具脚本解决了该问题,该脚本已预装了Xcode 6(不需要重新安装Xcode 5)。 http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/ 终端中的脚本: xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa
  • 由于没有证书与证书ID匹配,因此无法在临时配置文件到期之前对其进行续订(Cannot renew an Ad Hoc profile before it expires because no certificate matches the certificate ID)
    问题 我的临时配置文件将在14天后过期。 在管理器中,我的即席配置文件有一个“更新”按钮,但是当我单击它时,会得到... 该团队中没有与提供的证书ID匹配的当前证书。 供应门户中的概要文件显示为活动状态,于30日到期。 我还看到了具有相同到期日期的发行证书。 我必须假定此证书是用于对配置文件进行签名的证书。 有什么方法可以解决此问题而无需撤消和创建新的临时配置文件和证书? 如果必须重新开始,什么是最好的进行方法而不弄乱我的测试人员。 关于此主题有很多帖子和答案,但是我找不到与该配置文件的证书ID不匹配的证书来解决此特定问题。 回答1 临时供应配置文件由三个主要元素组成: 恰好1个AppID 您的发行证书的公钥一个或多个注册的测试设备ID 当您首次生成此配置文件时(大约一年前,如果当前的配置文件即将到期!),您指示它在构造该配置文件时使用当时的最新分发证书-生成的临时配置文件的到期日期设置为匹配分发证书的到期时间,因为您无法启动使用过期证书签名的应用(此外:这不一定适用于越狱场景...) 您的主要问题是“可以不撤消就解决吗?” 是可靠的“否”-即使您可以进行调整,即将到期的“分发证书”也会导致新发行的“临时配置文件”的有效期与“分发证书”相匹配。 当您的证书和配置文件都都过期时,您将在14天之内回到这种情况。 不幸的是,那时您还会遇到一个新问题,因为签署证书和置备配置文件将失效
  • App Store和Ad Hoc已禁用(App Store and Ad Hoc disabled)
    问题 当我尝试创建App Store和Ad Hoc分发选项时,它在我的Apple帐户中被禁用,有时iOS应用程序开发选项也被禁用。如何创建分发证书。有人可以帮助我吗? 回答1 您已达到“临时分发证书”的最大数量限制,即3个。要创建新证书,您必须撤销旧证书。 回答2 对于开发证书,限制为2,对于生产证书,限制为3 回答3 您制作的每个应用程序都不需要一个单独的Ad Hoc Distribution Certificate 。 换句话说,您可以将同Ad Hoc Distribution Certificate用于多个应用程序。 简而言之, Ad Hoc Distribution Certificates是Apple识别并验证您的计算机是付费开发人员计算机的一种方式。
  • 权利无效(Entitlements are not valid)
    问题 最近,我将我的iPhone SDK操作系统从2.2.1版升级到了3.0版。 之后,在构建我的应用程序时,我得到一个错误,即配置文件已过期。 因此,我创建了一个新的配置文件。 然后,我使用配置文件分发了我的应用程序。 但是在将我的应用程序同步到iPhone设备时,iTunes中出现错误。 错误消息是“由于权利无效,因此未在iPhone上安装应用程序'iGVA'。” 我检查了签名权利的代码是否包含正确的权利plist文件。 如何解决呢? 回答1 迈克尔在上面的答案是正确的(或他指向的链接是)。 这是我必须采取的步骤才能使其正常工作: 拥有检查其设备UDID的临时证书。 通过将该证书拖到XCode图标上来安装它。 在项目上,创建分发配置,然后将构建参数设置为适当的设备。 分配。 现在,我们针对Device 3.0进行构建| 分配。 我的项目没有包含Entitlements.plist文件-我必须通过从菜单中选择“文件” |“添加”来添加它。 添加文件| iPhone操作系统| 权利,然后调用新文件Entitlements.plist 新的plist文件只有一行-将该行的值设置为未选中。 在项目构建配置中,在“代码签名权利”行中,输入Entitlements.plist文件名作为值。 在“代码签名身份”中,选择临时证书身份(尽管我发现您也可以使用分发证书身份) 现在建立:)
  • 没有AppStore的iOS App部署(iOS App deployment without AppStore)
    问题 我正在公司中开发一个应用程序。 我们想将此应用程序分发给我们的客户,但不使用Apple的AppStore,有可能吗? 我听说过MDM(移动设备管理器),但是我不确定是否可以满足此需求? 我也听说过企业内部部署的企业开发人员许可,但是如果我正确理解,则意味着该应用只能在公司内部部署,而不能部署到我们的客户,这是否正确? 感谢您的澄清。 塞布 回答1 如果您想在没有App Store的情况下将应用程序提供给客户,则可以选择,但没有一个很棒。 二进制文件的无线分发有很多选择,这实际上不是复杂的部分。 您已经有了MDM解决方案,HockeyKit,TestFlight,手动服务器操作-所有这些都非常容易并且有据可查。 签名令人讨厌。 如果您绝对不想参与App Store环境(无应用商店,无批量购买计划),则只有两个实际选择: 临时-仅限100个设备。 必须将设备明确添加到配置中。 企业-没有设备限制,无需明确将设备添加到规定中。 实际上,这些构建可以在任何设备上运行; 请注意,根据法律,您不得将这些内部版本分发给公司外部的任何人。 如果您打算为其他公司及其雇员开发应用程序,那么唯一可行的选择是在最终版本上签名并附上该公司的开发帐户上的签名证书。 如果您可以让公司对所有书面文件进行签名以获得自己的开发者帐户(由他们拥有),那么企业签名路线是一种非常不错的方法。 回答2
  • 可执行文件已使用无效的权利进行了签名(The executable was signed with invalid entitlements)
    问题 我在iPhone上的临时分发有问题。 我已经用SDK 3.0开发了一个应用程序。 我有开发者许可证。 我在项目中添加了证书和配置文件。 因此,没有问题。 但是,当我尝试在iPhone上安装该应用程序时,它将编译该项目,然后在“管理器”窗口中显示错误: "The executable was signed with invalid entitlements" 。 我想念什么吗? 我已经从2.2.1升级了iPhone,并从Apple下载了最新的SDK。 请帮我解决这个问题。 回答1 “门户计划”中有很好的说明。 如果您登录 http://developer.apple.com/iphone 然后点击左侧的发布,然后点击 创建和下载用于Ad Hoc分发的分发供应配置文件 底部的链接。 这是关键的一点: 对于临时分发,请完成以下操作: 在文件菜单中,选择新建文件-> iPhone操作系统->代码签名->授权。 将文件命名为“ Entitlements.plist”,然后单击“完成”,这将在项目中创建默认权利文件的副本。 选择新的Entitlments.plist文件,然后取消选中“ get-task-allow”属性。 保存Entitlements.plist文件。 (在Xcode 4中,get-task-allow被称为“可以调试”) 选择目标并打开构建设置检查器。 在
  • 没有身份可用于签署Xcode 5(No identities are available for signing Xcode 5)
    问题 尝试在Xcode 5中验证我的应用程序时出现错误“没有身份可用于签名”。 我很困惑,因为当我尝试以临时方式分发我的应用程序时,它成功创建了IPA文件并将其安装在测试设备上。 但是,当我尝试验证我的应用程序或提交给AppStore时,总是出现错误。 也许有人可以帮助我解决这个问题。 回答1 您需要做的是: 转到开发人员中心中的证书,标识符和配置文件在“ Provisioning Profiles” /“ Distribution”中创建一个新的Provisioning Profile 下载配置文件并打开它重新启动Xcode 回答2 请确保您使用的是分发配置配置文件,而不是开发。 并且Xcode中的代码符号设置与发行配置文件兼容。 回答3 验证过程不适用于临时配置文件。 需要创建分发设置配置文件。 Beta测试说明中未对此进行指定。 我整天痛苦不已,直到意识到。 回答4 使用应用程序加载器(Xcode->打开开发人员工具->应用程序加载器)。 另外-此答案/问题可能也对您有所帮助:https://stackoverflow.com/a/18914073/730172 回答5 重新启动Xcode为我解决了问题! 重新启动和/或清理解决了所有问题的99%... 回答6 上面@CainaSouza的评论对我有用。 我什至不必创建任何新的配置文件。 我只需要转到Xcode>首选项>帐户>
  • 导出.ipa的Xcode 6 beta 2问题:“您的帐户已经具有有效的iOS发行证书”(Xcode 6 beta 2 issue exporting .ipa: “Your account already has a valid iOS distribution certificate”)
    问题 我在导出Xcode 6 beta 2上的Ad Hoc Distribution应用程序时遇到问题: 在Xcode 6上导出我的项目以进行临时开发时,我收到此警报。 我尝试在Xcode 5上导出它,并且保存.ipa完全没有问题。 有人也遇到这个问题吗? 回答1 这就是对我有用的东西。 在我的机器上,我同时保留了Xcode 5和Xcode 6 beta。 在Xcode 6 beta中,存档项目。 关闭Xcode 6。 打开Xcode 5,转到Organizer并使用适当的配置文件作为Ad Hoc构建导出。 而已! 回答2 两天前我遇到过同样的问题。 原来问题是: 我有自己的开发者发行证书,带有正确的私钥我有我的客户的企业开发人员发行证书,没有私钥我尝试为我的客户制作企业发行包 Xcode向我抛出模糊错误:您的帐户已具有有效的iOS发行证书 解决方案是:为我的客户的企业帐户获取私钥。 有两种可能的选择: 要求您的客户提供凭据以访问其在Apple网站上的企业开发人员帐户。 吊销旧证书并重新创建它。 您将在此过程中创建私钥。 注意:吊销企业分发证书会使使用该证书签名和部署的所有应用程序无效(官方信息)。 要求您的客户从他的“钥匙串访问”应用程序中将其私钥导出为* .p12文件,并使用密码将其发送给您。 您无法从Apple网站下载现有私钥。 获得它的唯一方法是询问您的客户。 我做到了
  • Updated Apple Developer Site Won't Allow Add Device to Ad Hoc Provisioning Profile April 2013 [duplicate]
    This question already has answers here: How to add a device to an existing Ad-Hoc Provisioning Profile? (3 answers) Closed 8 years ago. Edit April 9, 2013 Apple responded to my bug report on this matter and reported that "The problem has been fixed." I have confirmed that the problem is fixed. I can now add devices to older Ad Hoc provisioning profiles that were created before the website update. The problem is now resolved. Asside: Please note that underscore characters (_) are no longer permitted in the names of new provisioning profiles. As of this previous weekend April 6, 2013, it appears
  • 几天后,被测试的iPhone应用程序崩溃(iPhone app under test crashes after a few days)
    问题 我是制作iPhone应用程序的新手,这是我的第一次尝试。 我做了一个简单的应用程序,其中有两个按钮。 一个按钮打开一个URL,另一个按钮打开一个弹出窗口。 我尚未注册为Apple开发人员,并且正在通过将其连接到Xcode在物理设备上测试我的应用程序。 当我安装该应用程序时,尽管已将其与Xcode断开连接,但它仍可以正常运行几天。 但是,几天后,该应用程序无法打开,并闪烁黑屏,然后返回主屏幕。 当我将其重新连接到Xcode并在同一iPhone上再次运行相同的代码时,它又可以正常工作几天,然后再次崩溃。 我无法理解为什么该应用在几天后而不是立即显示这种行为。 如果没有以开发人员身份登录,是否有一些申请期限? (配置文件显示即将到期),如果没有,您能否指导我如何解决此问题? 请给我您尊敬的建议/意见,因为我被严重卡住,需要尽快找到解决方案。 非常感谢! 回答1 如果应用程序是随Xcode一起安装的,并且您没有付费的程序开发者帐户,则该应用程序的预期寿命约为48小时(没有正式的有效时间) 。 对于付费计划,需要几个月的时间才能获得正确的证书。 使用TestFlight,现在已经60天了。 实际上,如果您不对应用程序进行签名,则该应用程序的预期寿命会很短。 Apple允许免费帐户将设备安装到设备上是很新的做法,但这只是出于测试目的(除了模拟器),如果您想在设备上花更多的时间进行测试
  • iPhone iOS 推送通知在生产中未发送(iPhone iOS push notifications apns on production not sending)
    问题 我已经在这方面工作了一段时间了。 我知道那里有很多文章,并且已经学到了很多。 我以同样的方式创建了我的开发和生产 SSL。 开发连接到 ssl://gateway.sandbox.push.apple.com:2195 生产连接到 ssl://gateway.push.apple.com:2195 连接似乎工作正常。 至于应用程序。 开发:当我从 xCode 直接在我的设备上运行它时,它运行开发版本。 应用程序成功在数据库中记录了开发令牌。 然后我运行一个服务来发送一个推送通知,它被正确传递。 消息已成功发送。 Ad-hoc:当我构建一个存档并将其导出为 Ad-hoc 分发时,我会仔细检查包内容codesign -dvvvv --entitlements - Elepago.app并查看 aps-environment 是否正确设置为生产。 我将它打包并通过 iTunes 加载到我的设备上。 当应用程序启动时,我看到数据库中记录了新的生产令牌。 所以必须正确设置环境。 当我将推送通知发送到生产密钥(与开发相同,只是更改 SSL .pem 密钥和服务器)时,它表示已成功交付。 然而它从未真正到达设备!!! 这个问题让我发疯。 我刚刚完成并清除了我的分发证书,并使用全新的 CSR 重建了它。 我还更新了所有配置文件以使用该新证书。 [任何想法如何将这些证书与应用程序联系起来
  • Xcode 6 App Store提交失败,并显示“您的帐户已具有有效的iOS发行证书”(Xcode 6 App Store submission fails with “Your account already has a valid iOS distribution certificate”)
    问题 我使用的是最新的XCode(6.1),我需要尽快提交该应用程序,但似乎无法解决“您的帐户已具有有效的iOS发行证书”的错误。 我有客户的配置文件,还有他的发行证书(有效)和私钥(我已经使用钥匙串检查过,肯定在那里)。 捆绑软件ID也正确。 我已经删除了我的配置文件和证书,并且现在已经多次重新安装了客户端。 是什么导致此问题? 我在这里看到了很多关于此问题的主题,因此我为创建另一个克隆而事先道歉,但我真的不知道如何解决此问题。 编辑:顺便说一句,我正在运行全新的优胜美地 回答1 通过在开发人员成员中心中编辑iOS发行配置文件解决了该问题。 出于某种原因,分发配给配置文件有2个证书可供选择。 我切换到其他证书,可以验证并提交存档版本以进行Beta测试。 因此,您可能有多个证书来签署您的“供应”配置文件。 确保您拥有正确的选项(尝试所有选项),并希望它能起作用。 我尝试了很多事情,例如从Xcode Accounts导出开发人员配置文件并将其导入管理器中,从成员中心安装配置文件,然后将其添加到我的钥匙串中。 但是这些都不起作用。 仅在手动编辑适当的Provisioning Profile之后,它才能开始工作。 您也可以尝试删除所有可用的Provisioning Profiles,并让Xcode为您创建新的Profiles。 这也将起作用。 回答2 我也遇到了这个问题
  • iOS超级签名系统源码及分析
    上网查了好多资料关于超级签名的原理以及系统,大部分归为两大类: 一、市面上美其名曰自动化的系统很多,但是基本都是依靠第三方工具,像内测侠啊、开心签名工具啊,每年基本都得交1000多块钱,而且还有下载次数限制。然后我试用了市面上的蒲公英或者其他工具,都是需要appid账号和密码还要允许登录,我猜测蒲公英的是在mac电脑上搭建了服务器,然后通过linux服务器控制mac,mac可能是托管了服务器,或者是自家有服务器mac server机房什么的,才能商用。 二、照抄,如下图。这种方式就只能自己玩玩,小公司玩玩,不适合商用,缺陷太明显,只能在mac上运行,不过可以在局域网内部署这种,方便测试。代码从某书那里花2k买的,买了之后才发现被坑了,只能在mac下运行 下载链接 今天就来帮大家解析一下其中的门门道道,以及这套机制的技术难点。 签名原理 签名原理其实就一句话,使用了苹果提供给开发者的Ad-Hoc分发通道,把安装设备当做开发设备进行分发。 既然签名用是 Ad-Hoc ,那么 Ad-Hoc 所具有的优劣势也一并继承了下来: 优势: 直接分发,安装即可运行,不需要用户做企业证书的信任操作 目前稳定,不会有证书吊销导致的业务风险(后续苹果政策风险非常高) 缺点: 单开发者账号的iPhone设备数量只有100个,导致分发成本非常高(99美元/1年/100个设备)
  • What is an Ad Hoc certificate for iOS test app distribution?
    I'm developing a iPhone app and need to send it to my client. In turn, my client will distribute it to many other people for end-user testing. What kind of Provisioning Profile, Certificate, or Code Signing will accomplish this task? I've heard something about Ad Hoc certificates; is an Ad Hoc certificate relevant for this task?
  • Xcode尝试查找或生成匹配的签名资产,但未成功(Xcode attempted to locate or generate matching signing assets and failed to do so)
    问题 因此,我试图使用Mavericks上的Xcode 6.0.1使用现有的配置文件(以前使用过)创建一个临时构建,但是在尝试导出此归档文件后,我不断遇到以下错误: 我需要重新创建证书和配置文件,还是有更好的解决方案? 谢谢! 回答1 我还以“团队成员”的角色面对这个问题。 “您不允许执行此操作”警告使我相信XCode更严格地执行此处定义的角色:https://developer.apple.com/programs/roles/ 即使我可以访问签名资产(证书和配置文件),XCode也不允许我指定它们。 尝试将您的角色升级为Team Admin。 2014年9月29日更新:经过广泛研究,我发现可以使用xcodebuild从命令行生成.ipa,甚至可以使用以下内容作为“团队成员”角色: xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile "Provisioning Profile Name" 贷记1 注意:如链接文章中所指出,“ Provisioning Profile Name”是在证书的名称字段中指定的名称(可从developer.apple.com查看)。
  • iOS安全逆向之旅---逆向基本知识概要介绍
    从这一篇文章开始,我么就要开搞iOS相关的东西了,包括正向开发和逆向分析,因为不能仅仅局限于Android的世界,iOS的世界依然很美,同时我也是经常使用iPhone的,一直都想用上自己开发的插件,不过越来越觉得iOS不如Android好用了,本文主要介绍一下后续开搞的基本知识点。看看开发iOS需要知道哪些东西和需要准备哪些工具,具体和Android做比对。 一、应用开发和发布 关于应用发布已经账号开发,iOS和Android有着很大的区别,有这么大的区别应该是iOS整个生态系统比Android完善吧,Android我们都知道只要有AndroidStudio和一个设备就可以入门开发了,当然这里忽略模拟器效果哈。但是iOS不行,iOS不是说只要有一个Xcode和一个iPhone就可以开发了,还需要设置证书啥的。还有发布的时候也是,对于Android国内是免费的,只要你能够过了各个市场的审核就可以,国外GooglePlay需要开通账号我记得我当时是给了29美金,但是这个是终生的哦,所以还觉得可以,但是iOS就恶心了,只要购买就必须每年是99美金,记得是每年哦,说实话为了个人学习购买的话我是不愿意的,不过他也有免费的但是限制很恶心。下面来看一下iOS中应用发布和开发账号类型的区别 看到这张表格很好的诠释了iOS中开发者账号的几个类型,这里更多的关注是个人账号和公司企业账号: 1
  • 缺少推送通知权利(Missing Push Notification Entitlement)
    问题 我有一个要提交的应用,当它被拒绝时,我收到消息 缺少推送通知权利-您的应用程序似乎已在Apple推送通知服务中注册,但应用程序签名的权利不包括“ aps-environment”权利。 如果您的应用程序使用Apple Push Notification服务,请确保在Provisioning Portal中为您的Push ID启用了您的App ID,并在使用包含“ aps-environment”权利的Distribution Provisioning配置文件对您的应用程序进行签名后重新提交。 我检查了临时配置,然后在其中找到了aps环境和生产环境,但是当我打开分配配置时,却没有找到。 这是此错误消息和苹果拒绝的原因,我该如何解决? 回答1 是的,这就是App Store被拒绝的原因。 如果您的临时配置文件具有aps-environment密钥,则意味着您的应用程序已在Apple Provisioning Portal中正确配置。 您需要做的就是删除本地计算机上的App Store分发配置文件,然后从Provisioning Portal重新下载并安装分发配置文件。 此新密钥应包含aps环境密钥。 回答2 第一个应用程序ID 确保在生产端启用您的ID推送通知 如图所示 二等证书 从生产部分创建两个带有您的ID的证书(启用推送通知) App Store和Ad Hoc证¹