ios 没有可用的身份 - 管理员请求

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/10215530/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-30 17:56:02  来源:igfitidea点击:

No identities were available - administrator request

iosiphonexcodecertificate

提问by Nasenbaer

I had problems while "archiving" my app. I think there are invalid profiles because of iPhone Update to 5.1 and XCode update to 4.2.2.

“归档”我的应用程序时遇到问题。我认为由于 iPhone 更新到 5.1 和 XCode 更新到 4.2.2,存在无效的配置文件。

I've taken now more than 4 hours to get rid of certification issues while using this thread step by step 3 times (which costs a lot of time):

我现在用了 4 个多小时来解决认证问题,同时一步一步地使用这个线程 3 次(这花费了很多时间):

Getting "A valid signing identity matching this profile could not be found in your keychain" warning

收到“在您的钥匙串中找不到与此配置文件匹配的有效签名身份”警告

I still have the following fault: XCode certification error

我仍然有以下错误: XCode 认证错误

No identities were available An administrator must request identities before they can be downloaded.

没有可用的身份 管理员必须先请求身份才能下载。

The "Download identities" button went back to this window after processing some seconds.

处理几秒钟后,“下载身份”按钮返回到此窗口。

Do you know how to get out of this wood of certification documentations and solve that fault?

您知道如何摆脱认证文件的困境并解决该故障吗?

回答by Takol

  1. Visit Member Center

  2. Go to "iOS Provisioning Portal"-> "Certificates"(Left sidebar) >> "Distribution"tab

  3. Check field "Provisioning Profiles". If empty, next (4)

  4. Go to "Provisioning"(Left sidebar) -> "Distribution"tab. Press "New Profile" and complete it. Go back to (3) check the field again.

  5. Download and "run"(double click) the new provisioning profile.

  6. In your project's build settings select the NEW provisioning profile (it might have the same name as the old one)

  7. In your project's build settings update your code signing identities (all of them) to the new one if there is one. (The old one was probably expired which is one of the biggest causes for the error message you saw)

  8. Verify that your bundle ID is correct (CaSe SeNsEtIvE)

  9. Back to XCode Organizer - Devices. Click TEAM (Left sidebar) and click "Refresh" (right-bottom). You will find XCode fetch the new profile. If new content loaded, repeat steps 6 and 7 (they will have been changed!)

    *If you can't find team because you are running a newer version of xCode, go to Xcode preferences (clicking "Xcode" on the mac toolbar on the top left corner of your screen) and go to account, select your team and click refresh. If new content loaded, repeat steps 6 and 7 (they will have been changed!)

    If you are in Preferences-> Accountsand you stillcan't refresh, then:

    • Click on the Accounts tab
    • Select an Apple ID in the list
    • Click "View Details" on the bottom right
    • Click on the refresh arrow on the bottom left
    • Xcode will now refresh the updated credentials, and you can proceed to validate or distribute your app.

  10. Validate or distribute your app again. It should work.

  11. If this didn't work then go to "TEAM" under project settings > targets and select "none"... Now that you have selected None you will need to repeat step 7 and change the code signing identities (all of them) and try archiving again.

  12. Lastly, if none of the above worked. Simply create a new production certificate AND create a new provisioning profile with the same bundle ID. (Yes, this will work if you are updating an app that is already live). Download the cert and prov. profile and run both (double click). Now repeat step 6 and archive. This should work.

  1. 访问会员中心

  2. 转到“iOS 配置门户”-> “证书”(左侧边栏)>> “分发”选项卡

  3. 检查字段“供应配置文件”。如果为空,则下一步 (4)

  4. 转到“配置”(左侧边栏)-> “分发”选项卡。按“新建配置文件”并完成它。返回 (3) 再次检查该字段。

  5. 下载并“运行”(双击)新的配置文件。

  6. 在您项目的构建设置中,选择 NEW 配置文件(它可能与旧配置文件同名)

  7. 在您的项目的构建设置中,如果有的话,将您的代码签名身份(所有这些)更新为新的。(旧的可能已过期,这是您看到的错误消息的最大原因之一)

  8. 验证您的包 ID 是否正确(案例 SeNsEtIvE)

  9. 回到 XCode 管理器 - 设备。单击团队(左侧边栏)并单击“刷新”(右下角)。你会发现 XCode 获取新的配置文件。如果加载了新内容,请重复第 6 步和第 7 步(它们将被更改!)

    *如果您因为运行的是较新版本的 xCode 而找不到团队,请转到 Xcode 首选项(单击 mac 工具栏上的“Xcode”屏幕左上角)并转到帐户,选择您的团队并单击刷新。如果新的内容加载,重复步骤6和7(它们将被改变!)

    如果你在首选项- >帐户,你仍然不能刷新,则:

    • 单击“帐户”选项卡
    • 在列表中选择一个 Apple ID
    • 点击右下角的“查看详情”
    • 点击左下角的刷新箭头
    • Xcode 现在将刷新更新的凭据,您可以继续验证或分发您的应用程序。

  10. 再次验证或分发您的应用。它应该工作。

  11. 如果这不起作用,则转到项目设置>目标下的“团队”并选择“无”...现在您选择了无,您将需要重复步骤7并更改代码签名身份(所有这些)和再次尝试存档。

  12. 最后,如果以上都不起作用。只需创建一个新的生产证书并创建一个具有相同捆绑 ID 的新配置文件。(是的,如果您正在更新已经上线的应用程序,这将起作用)。下载证书和证明。profile 并运行两者(双击)。现在重复步骤 6 并存档。这应该有效。

回答by BooTooMany

@Takoi's answer is correct. However, with my latest version of Xcode, there is no TEAM option in the Devices section of the Organizer. I had to do the following instead to refresh the credentials:

@Takoi 的回答是正确的。但是,在我最新版本的 Xcode 中,管理器的“设备”部分中没有“团队”选项。我不得不执行以下操作来刷新凭据:

  1. Go to Xcode->Preferences
  2. Click on the Accounts tab
  3. Select an Apple ID in the list
  4. Click "View Details" on the bottom right
  5. Click on the refresh arrow on the bottom left
  1. 转到 Xcode-> 首选项
  2. 单击“帐户”选项卡
  3. 在列表中选择一个 Apple ID
  4. 点击右下角的“查看详情”
  5. 点击左下角的刷新箭头

Xcode will now refresh the updated credentials, and you can proceed to validate or distribute your app.

Xcode 现在将刷新更新的凭据,您可以继续验证或分发您的应用程序。

Hope this helps!

希望这可以帮助!

回答by Wasi Shah

Make sure the bundle id in your .plist file in XCode is the same as the bundle id in itunesconnect, if it's off, it won't be able to match the archive to the profile on itunesconnect when validating/distributing.

确保 XCode 中 .plist 文件中的包 ID 与 itunesconnect 中的包 ID 相同,如果关闭,则在验证/分发时将无法将存档与 itunesconnect 上的配置文件匹配。

回答by bobobobo

This is a little easier now.

这现在稍微容易了一些。

  1. You go to the app itunesconnectand login
  2. click "certificates"
  3. Provisioning Profiles / Distribution
  4. generate a profile,
  5. download the profile
  6. double click it
  1. 你去应用程序itunesconnect并登录
  2. 点击“证书”
  3. 配置文件/分发
  4. 生成配置文件,
  5. 下载个人资料
  6. 双击它

回答by deko

I am a member of 2 teams and had the same problem while uploading one of the projects.
Changing General -> Identity -> Teamto Nonein project settings (XCode 5) allowed me to upload the application to iTunesConnect.

我是 2 个团队的成员,在上传其中一个项目时遇到了同样的问题。在项目设置 (XCode 5)中将 General -> Identity -> Team
更改为None允许我将应用程序上传到 iTunesConnect。

Screenshot is here

截图在这里

回答by Moose

I guess it is written somewhere in the stream, I did not read all in detail. I just want to emphasise on this point:

我猜它写在流的某个地方,我没有详细阅读。我只想强调这一点:

Due to an annoying xCode behavior, once you've set up everything, you HAVE TO clean the project and Quit xCode.

由于令人讨厌的 xCode 行为,一旦您设置了所有内容,您必须清理项目并退出 xCode

Then relaunch and build. Now you know if it works or not.

然后重新启动并构建。现在你知道它是否有效。

回答by bickster

My certificate had expired which resulted in my provisioning profile being expired.
Once I -

我的证书已过期,导致我的配置文件已过期。
有一次,我 -

  • Updated my certificate on the iOS web portal
  • Clicked Edited on the provision profile
  • Selected the new certificate and clicked generate
  • In Xcode I refreshed my provisioning profiles
  • 在 iOS 门户网站上更新了我的证书
  • 单击供应配置文件上的已编辑
  • 选择新证书并点击生成
  • 在 Xcode 中,我刷新了我的配置文件

Error went away

错误消失了

回答by seantomburke

My bundle identifier was named differently. I had to change it from Nyquist.GasBro to com.Nyquist.GasBro which is what I had in the provisioning profile.

我的包标识符命名不同。我不得不将它从 Nyquist.GasBro 更改为 com.Nyquist.GasBro,这是我在配置文件中所拥有的。

回答by jonusx

It looks like you're going to have to request another developer cert. Go to the iOS dev center website and go to the provisioning portal. Click the certificates tab and follow the directions. https://developer.apple.com/ios/manage/certificates/team/howto.action

看起来您将不得不申请另一个开发人员证书。转至 iOS 开发中心网站并转至配置门户。单击证书选项卡并按照说明进行操作。https://developer.apple.com/ios/manage/certificates/team/howto.action

To be clear, you're problem doesnt seem to be provisioning related, it's specifically the developer cert. if you do get another cert, you'll have to create all new profiles to sign your apps with.

需要明确的是,您的问题似乎与配置无关,特别是开发人员证书。如果您确实获得了另一个证书,则必须创建所有新配置文件来为您的应用程序签名。

回答by Dmitry Isaev

None of previous answers helped me, so I post my issue.

以前的答案都没有帮助我,所以我发布了我的问题。

  1. Dev Center: Certificates, Identifiers & Profiles> Provisioning Profile > Distribution
  1. 开发中心:证书、标识符和配置文件> 配置文件 > 分发

Make sure that there is a distribution provisioning profile, and App ID in it is exactly the same as Bundle ID of your app in Xcode (Project Settings > General > Identity > Bundle Identifier).

确保有一个分发配置文件,其中的 App ID 与您在 Xcode 中的应用程序的 Bundle ID 完全相同(项目设置 > 常规 > 身份 > 捆绑标识符)。

  1. Xcode: Project Settings > Build Settings > Code Signing:
    • Provisioning profile - choose that Distribution provisioning profile name (not Development!)
    • Code Signing Identity - I choosed Automatic since I have only one.
  1. Xcode:项目设置 > 构建设置 > 代码签名:
    • 供应配置文件 - 选择分发供应配置文件名称(不是开发!)
    • 代码签名身份 - 我选择了自动,因为我只有一个。

P.S. Before doing this, I deleted all unused and expired provisioning profiles and signing identities from Dev Center and from Xcode. Then, refreshed as mentioned in other answers: Xcode: Preferences > Accounts > (my Apple ID) > View Details > Refresh.

PS 在此之前,我从开发中心和 Xcode 中删除了所有未使用和过期的配置文件和签名身份。然后,按照其他答案中所述进行刷新:Xcode:首选项 > 帐户 >(我的 Apple ID)> 查看详细信息 > 刷新。