如何以交互模式运行博览会?

时间:2018-07-06 16:17:51

标签: ios react-native npm build expo

在尝试为iOS构建我的expo应用程序(本机)时,我当前遇到问题。

运行命令exp build:ios时出现以下错误:

[18:11:15] Error while gathering & validating credentials
[18:11:15] Input is required, but exp is in non-interactive mode.
Required input:
> How would you like to upload your credentials?

这意味着我的expo应用程序正在以非交互模式运行,这就是为什么它在运行时不能接受输入的原因。我想知道如何解决此问题。

1 个答案:

答案 0 :(得分:1)

我将这种方法用于我们的CI / CD。

您需要运行

expo build:ios --release-channel deploy-test -c --clear-app-credentials

然后

expo fetch:ios:certs

此命令将从expo获取生成的证书,并且还将提供2个密码。您需要将它们设置为环境变量。

EXPO_IOS_DIST_P12_PASSWORD: Distribution p12 password

EXPO_IOS_PUSH_P12_PASSWORD: Push p12 password

现在,您具有登录到Apple时要传递给expo的信息,请使用以下命令。

expo build:ios --no-publish --no-wait --release-channel production --team-id TEAMID --dist-p12-path "PROJECTNAME_dist.p12" --push-p12-path "PROJECTNAME_push.p12"  --provisioning-profile-path "PROJECTNAME.mobileprovision" --non-interactive -c

希望这会有所帮助!