我正在尝试使用App Store VSTS扩展将应用程序的版本部署到TestFlight,但在身份验证阶段出现故障。
这似乎与iTunes挑战该帐户安全问题的答案有关:
我不确定如何解决这个问题:
- 这是我尝试使用的帐户有问题吗?
- 这是我配置服务终结点的方式有问题吗?
fastlane pilot upload -u ******** -i FrameworkDemoApp.Touch.ipa -q 466996 -r **** -a *****
--skip_submission true --skip_waiting_for_build_processing true
Login to iTunes Connect (********)
Service key is empty
/Users/vsts/.gem-cache/gems/fastlane-2.93.1/spaceship/lib/spaceship/two_step_client.rb:45:
in handle_two_step:`
[!] Invalid 2 step response {"securityQuestions"=>{"questions"=>[{"id"=>134, "question"=>
"Where did you go the first time you flew on a plane?", "number"=>1, "userDefined"=>false},
{"id"=>136, "question"=>"What is your dream job?", "number"=>2, "userDefined"=>false}]},
"crResetEnabled"=>false,
"resetSecurityQuestionsSupportLink"=>"http://support.apple.com/kb/HT6170"}
如果您在此构建和发布过程中使用个人帐户并启用了 2FA,则可能会遇到问题。
Microsoft关于App Store VSTS扩展的文档的"官方"建议是不启用2FA,但为了避免需要2FA,用于发布的Apple ID不能是"帐户持有人"类型。
请参阅Fastlane文档中的 https://docs.fastlane.tools/best-practices/continuous-integration/#separate-apple-id-for-ci,它还适用于不仅仅是VSTS,这可能是很难找到的原因(我自己偶然发现了它(。
此问题似乎是因为我使用的Apple ID没有启用两步验证。
VSTS 文档中没有明确说明这一点:https://docs.fastlane.tools/best-practices/continuous-integration/#use-of-application-specific-passwords-and-spaceauth