Is two-factor authentication required to upload iOS app to App Store - ios

Today I wanted to upload a new version of iOS app to App Store via Xcode, but it shows me the error:
"Two-factor authentication must be turned on for your Apple ID. After you turn it on, signing in to your developer account will require both your password and access to your trusted devices or trusted phone number."
Previously (even yesterday) everything worked just fine without 2FA, so is there anything that could be done without 2FA?

In an effort to keep your account more secure, two-factor authentication will be required to sign in to your Apple Developer account and Certificates, Identifiers & Profiles starting February 27, 2019. This extra layer of security for your Apple ID helps ensure that you're the only person who can access your account.
Please refer the below link
https://support.apple.com/en-gb/HT204915

I face same issue, but we can export the ipa file instead of directly uploading from Xcode and then upload ipa file via application loader. It worked for me.

Related

In an Enterprise iOS app, how to replace the *.mobileprovision file on device after existing profile expired, but without re-signing the IPA?

We have a series of iOS Enterprise applications that were built with Telerik Cordova (discontinued in May 2018). Those apps are in the process of being converted to a new platform, but in the mean time they must continue to service client needs.
The distribution certificate the apps were built with is valid for another 14 months or so, but the provisioning profiles expire in a few days. Since these are Enterprise apps they will expire with the profiles.
Unfortunately, Telerik can no longer rebuild the apps using an updated profile for us. We have re-signed the apps using new provisioning profiles (using both iReSign and Terminal). When we try to side-load the resulting IPAs through the XCode Devices panel, we get an error stating that the entitlements do not match and the apps are not installed.
The question was raised as to whether or not we not need to re-sign the apps since the certificates are still valid. Perhaps it would be possible to just replace the .mobileprovision file on the device somehow? I gave it a try using iTunes Sync but I cannot confirm whether the file actually went to the device or not.
Question: Is it possible to just update the *.mobileprovision on the device without re-signing the app? If so, could someone please give me the steps or direct me to a link to perform the steps?
Alternate Question: Otherwise, any thoughts on how to resolve my Entitlements issue? The app only needs Push Notifications, but Game Center and In-App Purchases are also enabled. These are reflected in the App ID and provisioning profile, and the distribution certificate is of type Apple Push Services.
I should point out that I am not an admin on the Apple Developer portal for the project as I am an outside consultant, so my portal access is strictly read-only.
Thanks in advance for any direction provided!
If the applications were distributed to the devices by an MDM, then you can push a new provisioning profile to them using the MDM.
If the applications were installed over the air from a web server or directly using iTunes or Apple Configurator, then you need to replace the entire application package on the device. This requires the app to be re-signed, since the changed .mobileprovision file will change the package signature.
If you don't have the original, app ID with matching entitlements in the developer portal, then you will need to delete the existing application from the device before installing the new, re-signed application. You won't be able to do an in-place upgrade.

Importing Developer Profile .developerprofile doesn't work. Still require password

I imported the Developer Profile .developerprofile to Xcode. But it still requires password for that account when I want to export ipa or Upload to App Store.
It happens for all accounts that I imported to the Xcode.
I tried to ask my client for export new .developerprofile file and it still can't be fixed.
Someday before, everything worked properly. I searched for hours but still stuck.
With the image below, the accounts with the mark (~) stop working. The middle account can work after I enter the password.
Please help me.
First, I'd remove and add those profiles once again. You can delete profile by tapping minus sign at the bottom of Accounts window.
Second - check Keychain Access and see if related accounts are included in your Keychain and all related Provisioning Profiles are not marked as red.
Finally, do remember that to upload application to iTunesConnect you need access to iTunesConnect account which may not be the same as Developer Program account - this is really common if you are handling several clients on one Developer Program account (meaning, using only one Apple ID) and use different iTunesConnect accounts - than you'll need to sign with them too using Accounts section in Xcode Preferences.
Yes, it requires password i.e., your local system password. Whenever you export or upload it asks for system Password.
Allow keychain access here so that it store the password.
In the above account you just give apple id and apple password, no description is needed.
Finally, I figured out the problem.
My customer changed the password of the account that I imported. That why the Xcode ask the password every time I want to use.
To solve this, I requested my customer export for the new .developerprofile (match/have the new password)
For more information:
With Code Signing Identity is "Developer", just need the developer .p12 file. I can build and upload to App Store for Testflight.
With Code Signing Identity is "Distribution", I have to use(import) .developerprofile.

iOS Second Developer Certificate

My situation is that I have just hired a second developer to work remotely. He doesn't have a developer account and would like to send me his progress.
At the moment he is using my Apple Developer account with a temporary password but this is not ideal, is there a way that he can have a certificate and I can reset my password?
My Apple developer account is set up as individual by the way
Thanks
If you are not going to extensively adding and removing the devices then the easiest way is to add all the devices, create dev and distribution profiles and certificate download all in your Xcode then simply export and send to him and he can simply import and use the local signing assists option not the online account .
You can export the certificate and the private key for the certificate in the Keychain Access application. You could then send the developer the key, certificate, and the provisioning profile to the other developer, who could then build the app with your provisioning profiles, without direct access to your developer account.
This will be a bit of a hassle if the other developer needs to do a lot of device maintenance on the developer profile (adding / removing devices). If that's not the case, I would simply send him the necessary files and reset your password to prevent having to share full access to the account.

Uploading app to client account in app store

This is my first time trying to upload app to app store, so I am completely lost. I have searched all over the web about the issue I am having, but could not find how to fix the issue.
Here is the problem:
I have developed an updated version for the existing iPhone app for client. Original version of app is already in app store for long time. Client wants me to upload new version of the app to their account in app store as "prerelease" for testing. They gave me their store account (admin role) username and password to log in. I added the account in Xcode and configured build settings to their team. But, after building the archive, when I click the "Validate" button and select their team, I am getting an error popup with the message "Your account already has a valid iOS Distribution certificate". I can't post images here, so here is snapshot image of the popup):
http://imgur.com/yLL5K1k
Apple troubleshooting documentation (documentation link here) shows that they should export developer profile and give me to import on my Mac. However, client say they don't have Mac and no Xcode, so they can't do it themselves. Apple documentation is mentioning another option - “Revoke and Request”, but I can't see that option. Also, if "revoke" is performed, will that affect client's application (more than 20 apps in app store)?
I have downloaded all of their certificates and profiles from Member center, imported to keychain, added account to Xcode, configured Xcode, but nothing helped.
Does anyone know what can I do, or ask to client, so that I can upload app to their app store account?
Thank you!
You must have downloaded the Distribution certificate from the account. That alone is not sufficient. You must get the private key from the client or developer who has created the certificate first or uploaded the application.
Log in to developer.apple.com portal, using the required credentials.
Click on "Manage your certificates, App IDs, devices, and provisioning profiles." under Certificates, Identifiers & Profiles
Then click on "Certificates"
On the new page Click on "+" button at right upper corner.
Now on this page select "App Store and Ad Hoc" under Production.
Then follow the instructions related to CSR file given on new page.
Note: Create new certificates with unique names so that you won't download old certificates to your mac, mistakenly.
For more info Distributing iOS Apps With iTunes Connect

Recompiling iOS app to publish on Apple store

I have published iOS app on Apple Store.
It was compiled on developer's MAC computer.
Now I need to figure out how to recompile on different MAC computer to publish on Apple store.
Can I use existing certificate
or
do I have to create new certificate?
I just want to publish newer version of my application.
What do I need from developer?
By the way, I have full access to Apple Developer's account.
Thanks,
Ashok
You would require private key, certificate, and provisioning profile along with access to apple developer account for publishing your app.
Since you already have access to the developer account, so provisioning profile and certificate is no issue.
So in fact you just have to private key from the developer.
FYI: private key and digital certificate[contains public key] are together known as signing identity.
In order to upload the app on app store you will need
Production Certificate with private key installed on your MAC.
Distribution Provisioning Profile (enabled for App Store ).
Make sure your provisioning profile use the same "App Id" that was used during the last version uploading process.
You can check the "app Id" or "bundle Id" on the app detail page of your iTunes account . ( You must have all these configured in your existing account)
Now, if you don't get the private key from your last developer. You can simply log in to iTunes account and can revoke the Production certificate.
You can find several tutorials on web for "Revoking Certificate"
After revoking you can download and install the certificate on your MAC and can also distribute it to other developers in your team. Now, download or create the distribution profile enabled for App Store and install it on your MAC (If it got expired then renew it)
Also, Please refer some tutorial for app uploading process. You will get a better idea on all this.

Resources