ios 使用您生成的应用程序特定密码登录,如果您忘记了应用程序特定密码或需要创建新密码-22938

ltqd579y  于 2023-01-18  发布在  iOS
关注(0)|答案(5)|浏览(297)

当我试图通过Fastlane发送我的申请时,我遇到了这个错误:
使用你生成的应用特定密码登录。如果你忘记了应用特定密码或需要创建新密码,请转到appleid.apple.com(-22938)
传输器传输失败。请使用您生成的应用程序特定密码登录。如果您忘记了应用程序特定密码或需要创建新密码,请转到appleid.apple.com(-22938)您的帐户已启用两步验证。请转到https://appleid.apple.com/account/manage并为iTunes Transporter生成应用程序特定密码。要使用环境变量在CI计算机上设置应用程序特定密码,可以设置FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD变量。
请提供您的Apple开发者计划帐户凭据您输入的登录信息将存储在您的macOS Keychain密码中(www.example.com的特定应用程序xxx@yyy.com)

yvt65v4c

yvt65v4c1#

溶液

如错误消息所示,我们需要在以下位置创建应用程序特定密码

    • 一个

地址。转到安全部分并使用"生成密码"。

生成密码

使用 * 生成密码 * 链接创建新密码。复制并粘贴密码,并且**不要忘记,单击"完成"**按钮后,您将无法再次找到密码。

FASTLANE_苹果_应用程序_特定_密码

然后,在您的bash或. bash_profile文件中设置FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD环境变量。根据您在终端上对bash的选择,此文件可能会有所不同。例如,如果您选择的bash与我的一样是ZSH,则需要编辑. zshrc文件。
然后使用以下内容重新运行快车道:

bundle exec fastlane beta --verbose
    • 注意:**当您无法手动输入安全代码时(如在持续集成系统上),您必须使用其他方式登录。如果您的操作用途不是上载二进制文件,例如更新任何元数据(如设置发行说明或分发给测试人员等),则应用程序特定密码将不起作用。

正在为Apple ID生成登录会话

由于您的CI计算机将无法提示您输入双重认证或两步验证信息,因此您需要提前为Apple ID生成登录会话。您可以在本地计算机上运行以下命令:

fastlane spaceauth -u user@email.com

□ □还有什么?

如果您的Apple ID没有2FA️ If you've Apple ID without 2FA

Apple ID without 2FA is deprecated!苹果宣布,自2019年2月27日起,将对具有"账户持有人"角色的开发者Apple ID强制执行2因素认证。此后,他们将这一规则扩展到所有角色,然后在整个2020年晚些时候,他们慢慢强制所有现有账户注册2FA。截至2021年3月3日,没有注册2FA的帐号在他们注册2FA方法之前是不能登录的,这基本上破坏了所有仍然存在的"不符合2FA的苹果ID"。2因此,当在你的CI中使用快速通道时,你将不得不使用2FA。
欲了解更多信息,请查看fastlane documentation
希望这有帮助!

3pvhb19x

3pvhb19x2#

我遇到了这个问题,但是在.zshrc(我使用的是ZSH)设置FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD环境变量不起作用。
相反,我在Fastfile中设置该变量:

before_all do
  ...
  ENV['FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD']= 'xxxx-xxxx-xxxx-xxxx'
  ...
end
fnx2tebb

fnx2tebb3#

以下是错误

的屏幕截图
这里是创建app-specific password

的位置

r1wp621o

r1wp621o4#

解决此问题的简单方法
问题:

答案:
第一步


步骤2


步骤3

第四步

  1. https://appleid.apple.com
    1.创建应用程序特定密码
    1.输入字符串,如示例
    1.已获取应用程序特定密码
    完成日期:

zed5wv10

zed5wv105#

我在尝试使用FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD时遇到了问题。它总是在2FA步骤中给我错误。结果是,为了让pilot使用该env变量,必须传递两个参数,apple_idskip_waiting_for_build_processing,否则将使用正常的用户名和密码验证。

pilot(apple_id: ENV["YOUR_ID"],
        skip_submission: true,
        skip_waiting_for_build_processing: true)

请注意,这只适用于上传,对于任何其他交互,推荐的方法是使用API_key。

相关问题