Hi everyone! If you install the newest version of exp (46.0.5) you should now be able to run your build with the --local-auth flag to perform all Apple authentication on your local machine, which also allows you to use 2FA!
If you have issues using the new auth flow, please file issues on https://github.com/expo/expo, thanks for your patience while we worked to get this out!
EDIT: just to note that this is opt-in right now since its a big change, we'll make it the default and close this request once we're sure it's working for everyone.
@Adam Perry: That's brilliant news!
@Adam Perry: Awesome!
Is this something we can do with application-specific passwords?
I ended up disabling 2FA in order to build, but later saw that there was an Apple app that a colleague of mine used that specifically mentioned creating an application specific password to use (presumably it also didn't support 2FA). Without re-enabling 2FA simply to test this, I just thought I'd put it out there as a possibility.
It may be as simple as updating the error message in exp and adding a little bit of documentation.
@Brent Vatne @Adam Perry any updates here? If someone can point me to the code, I can work on this.
Are there any plans to actually support building the app without the need of providing Apple ID password? Can't provisioning profiles be exported from Xcode?
Just an update in the mean time as to how I was able to get around this: If you create an apple ID through the website (and not through iOS or Mac OS), 2FA will be off by default. Then if you call apple developer support and explain to them the situation, I was able to have them issue me a refund on the $100 I paid for my developer account associated with my Apple ID that can’t turn off 2FA. Then you can apply again with the account that has 2FA turned off and be good to go.
@Greg Blass: That's quite a drastic workaround, I don't think most of the people are able to do that.
@Petr Peller: I had no choice other than disconnecting from Expo, so I figured I'd mention it in case anyone else was in the same boat.
@Greg Blass: yeah same here (i.e., detached), upgraded to Xcode 9 beta in the process, and everything has fallen apart (even Expo's starter detached examples won't load for me on simulator). Working to restore to Xcode 8 to see if I can recover. Ideally, I really don't ever want to deal with Xcode again -- what a time sink.
So yeah, reverting to Xcode 8 fixed my problems. However, once detached, there's really no going back and you run into reasons why not to detach . You at least still get publishing and remote preview, but not local simulator build, from the XDE. Mentioning this because in the original issue linking to this page, someone had asked why not just detach to build and package the app the traditional way to avoid having to deal with 2FA issues.  https://docs.expo.io/versions/v19.0.0/guides/detach.html#you-should-not-detach-if
@Adam Perry is working on this
@Brent Vatne,@adam-perry any luck re: this?
On our radar screen-- thanks for posting this!