iTunes Connect: Your app has one or more issues - ios

I am a bit frustrated because since yesterday i try to upload a new version of my Egg-Timer app to itunes connect. The upload itself works but after the upload finished i always get this email:
Dear developer,
We have discovered one or more issues with your recent delivery for "IsI Egg Timer". To process your delivery, the following issues must be corrected:
Invalid Signature - Code object is not signed at all. Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. If you are certain your code signing settings are correct, choose "Clean All" in Xcode, delete the "build" directory in the Finder, and rebuild your release target. For more information, please consult https://developer.apple.com/library/ios/documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team
I already tried to change the provisioning profile in the build settings (build settings < code signing) with the same result. I downloaded a new profile, changed code signing identity to i phone developer, iOS distribution and iOS developer - always the same result.
Perhaps anyone can help me out.
Thx

The message is clear, you didnt sign your app before submitting into the App Store. So what you have to do is>
Go to the Dev Portal and generate the distribution certificate.
Apply this certificate to your project (If you are using the most recent Xcode version you may want to leave the Automatic option when choosing certificate)
And then you should be able to submit your app without any trouble into the app store.
Please follow these guide https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/SubmittingYourApp/SubmittingYourApp.html
Hope it helps.

Related

Appcenter iOS install error "this app cannot be installed because its integrity could not be verified"

I see that this question has been asked many times but I see no solution that works for me so I'm hoping that providing more info might shed some light.
We use appcenter.ms to test iOS apps. Until our iOS certificate expired this method worked fine. We generated a new enterprise certificate and ad hoc provisioning profile for new releases of the iOS app. Which led to the first curiosity.
I see how to upload a certificate on appcenter.ms but not a provisioning profile. I thought there was an option to do this in the past but perhaps I am mistaken. However, the app is signed with a provisioning profile before upload, so perhaps this is not needed now.
Once the app is uploaded, it can't be installed. It remains grey and when you tap it, you get the "this app cannot be installed because its integrity could not be verified" error. Again, that the .ipa is created with an ad hoc certificate and profile in Xamarin (VS for Mac).
Also, I can't install the provisioning profile on a device from appcenter.ms. You basically get stuck in a loop where you seem to successfully install the profile but have to keep doing it because it never actually installs.
I hope this is enough info for some insight and thanks in advance for any feedback.
We were able to solve this by redoing and downloading development certs and via
And also downloading and double clicking the apple development certificate here
After that our keychain showed both as trusted and we could build to the iPhone again.
The issue can be the your device is simply not registered on the developer portal and/or that ad-hoc provisioning profiles have not been regenerated.
You need to register your device, regenerate a provisioning profile with this device in it and rebuild your app using this profile.
This can also happen because of
Developer ID Notary Service - Outage
which can be checked on https://developer.apple.com/system-status/
Notarization is well explained here:
Notarization gives users more confidence that the Developer ID-signed
software you distribute has been checked by Apple for malicious
components. Notarization is not App Review. The Apple notary service
is an automated system that scans your software for malicious content,
checks for code-signing issues, and returns the results to you
quickly. If there are no issues, the notary service generates a ticket
for you to staple to your software.
Work around fix:
Select your app.
Navigate to TextFlight tab
Create External Testing group
Add one tester
Add build which you want to download using TestFlight
Open TestFlight and download an app.
In my case this was caused by trying to include an entitlement for aps-environment "development" when using an Ad-Hoc provisioning profile. The value for this environment in Entitlements.plist must match what is hard coded into the provisioning profile file - if you open an Ad-Hoc profile in a text editor you will see it expects the "production" environment.
The possible solutions depending on your requirements are to either use the Development profile/certificate, or change the aps-environment to "production" to continue using an Ad-Hoc provisioning profile.
It can also happen if you have other incorrect entitlements - worth checking what entitlements are enabled under the Identifier in Apple Developer portal and removing unnecessary ones.
I had this issue because when building the app on xCode for distribution (Product->Archive then Distribute App), I chose automatic signing. After manually signing the app and choosing my own generated certificate and profile, everything worked again fine.
I removed the Entitlements file from the Addition Resources in iOS Bundle Signing and it worked.
I think the MSAL configuration was set to debug in entitlements.plist
I have also face this issue before but for me the reason was little different
First the build was enterprise one and the build was made on the earlier Xcode version on which the iOS version you are using on the device was not supported by the Xcode.
All I did was to update my Xcode and make a new build and shared the build. After that we were able to install that build over device Hope it works for you as well
This is how I solved for myself.
In you iPhone Settings > General > VPN & Device Management you should see your company name (if an app from it is installed), and if you click on it, you will see a button like "Verify" above the list of apps installed provided by the company. Just click on "Verify".

Missing Beta Entitlement iTunes Connect "error" - Xamarin Forms PCL

I have a problem, I have the same project in Xamarin on visual studio 2017.
When I deploy transmission certificates and load it all on itunes connect through Application Loader.
The problem is that, with one of the two applications (
I change the certificate every time I release an app or another.), I can not make the release for beta testers.
As you can see in the image below:
With the first App all goes well, but when the second load gives me the error that you see when you try to release it with testflight: Missing Beta Entitlement.
I looked online and I tried to put in info.plist file the following string:
<key>beta-reports-active</key> <true/>
But without success. Can anyone advise me how to solve? Thank you.
I uploaded to connect itunes version 1.13 but I get the same problem.
What I recommend here is to clean/clear your provisioning profile from Apple Developer Website.
Are you letting Xcode manage code signing identity ?
If so then it will create provisioning profile for you when you will be building for Release.
Indeed, it happens to me, it was a terrible mess in my configuration on Apple Developer.
I just removed everything, provisioning profile, create 1 Development and 1 Production certificate.
Then when you build for Release, Xcode will create provisioning profile for you, it starts with "XC".
Your issue is
likely a different provisioning profile from the Ad Hoc Distribution
Provisioning Profile you were probably using to sign TestFlight builds
TBH changing certificate evertytime you release an app or an other might also create a mess in Xcode configuration.
Helpful Post Here

The app couldn't be installed because developer certificate is no longer valid

I have invited one TestFlight user from iTunes to test my app. The app is currently under review status. When that user tried to install the app, at the time of launching in iTunes, it throws the following error :
Could not install XXXX.
The app couldn't be installed because the developer's certificate is no longer valid. To resolve the issue, contact the developer.
Anyone can provide brief explanation what could be the reason for this and how it can be resolved.
I encountered this error because the build was signed using a provisioning profile whose certificate had been revoked.
When i checked in the developer center, the provisioning profile was marked as "Invalid".
I just clicked "Edit", selected the new developer certificate and regenerated the provisioning profile. When the new build was uploaded on testflight signed with the new provisioning profile, the error went away.
However, i do think Apple should be checking if the provisioning profile is still valid rather than developers finding it out after build is already approved by TestFlight and testers complain about this error.
It simply means that the developer account from which this app is uploaded is expired OR the development/distribution certificates of the app are expired or revoked. It can be resolved by activating the certificates of the app on apple's developer portal.
We have uploaded a version to apple-test flight and apple approved app for external testers. Now we're trying to download and is not working, got same message.
But if we run app from dev phone push notification works so P12 still valid. And distributed with old test flight process works.
We're trying to upload another version and see if works.
I try and try again until I read a comment on the apple forum:
This XC profile will be acceptable for upload, but is incompatible with Testflight
When you have to check provisioning profile, be sure any "XC" provisioning profile is selected (you can change it by clicking on the right arrow)
more details on the "goldstee" answer : https://forums.developer.apple.com/thread/18446
The error CLearly states what is wrong, your Certificate needs to be renewed, as your certificate may have expired or revoked, Try to create the Certificate again along with the provisioning profiles, and it will work fine
I had a slightly different issue which was a bit more puzzling as everything was 'valid'. I encountered the issue when I needed a production push certificate (which I already set 2-3 months before and tested!).
This is what I've done to resolve the issue:
Check xocde - both Code Signing and Provisioning Profile:
I had the correct settings (they matched what I was expecting and what I used for a previous build).
Check my apple developer account - it stated that my 'prod' profile was 'Active'
Check xcode -> prefrences -> provisioning profiles - I found the profile I could see in apple developer. It had the same expiry date too!
Wet back to my Apple Developer account, clicked on the profile, downloaded it and double clicked on it.
That fixed the problem for me.
If you encounter any issues, I suggest you check Parse guide (yes, I know they are shutting down but their doc is very good!). It covers more than just profiles but you can choose the step you are having an issue with.
In my case, I found everything is fine, both provisioning profile and certificates were valid.
What I did wrong is, I upload the build to TestFligth using Transporter app, which usually needs an .ipa for same but choose adHoc type instead of AppStore while exporting the binary in the organiser.
Which somehow allow the build to upload to TestFlight but didn't authorised to install on the user's device.
So make sure you're choosing the right option while exporting the build.

No .app bundle found in the package, while uploading with Application Loader

I know there are already several questions on the subject, but I am really desperate. I don't know what else to do than to look for an advice here.
So, I have an app ready to be uploaded.
I have checked all the pre-steps, before trying to upload:
Bundle ID matches in info.plist, iTunesConnect, Apple developer, Provisioning profile
Game works perfectly when I run it on the device, in app purchase works with a test user, and not a single issue appears
Here are some screenshots with some info:
What I have noticed is that there isn't any Provisioning Profile selected:
Yet, when I select the provisioning profile I made earlier, I get this error. When I clock "Fix" it changes it back to none provisioning profile selected.
I don't know if that's the cause of the trouble
All in all, this is the Error I get:
This is my first time that I'm uploading an app with in app purchase. So I might missed some obvious step. I really hope that somebody will see the problem here, because I've been trying to fight this for 2 days now :(
When you see "iPhone Developer" in the code signing identity, that means Xcode will automatically select a matching identity to sign the app (It doesn't mean that no profile is selected).
From what I can see it looks like "iPhone Developer" is chosen for both Debug and Release configurations which will likely cause a problem because you cannot submit a Developer signed app to the App Store, it must be signed with a Distribution certificate and Distribution profile.
You will need to ensure that you have created a Distribution Certificate and profile to sign your app with before archiving it and submitting it via Xcode.
I would recommend you read up on how app store distribution works from the Apple documentation here:
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Introduction/Introduction.html
Then if you still are having trouble, read the trouble shooting guide from the docs here:
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Troubleshooting/Troubleshooting.html
I have had a similar problem. We received an APP from an external provider and re-signed the APP ourselves using our own certificate and provisioning profile. When uploading the APP with Application Loader I received the error ITMS-90167: No .app bundles found in the package.
I have sierra installed on my Mac and I am using XCode 8.0 but had an old version of Application Loader (3.0) that was installed separately. Using this version of Application Loader I got the message. If I instead used the Application Loader that is part of Xcode (from the XCode/Open Developer Tool menu), ie version 3.6 everything worked out great and the ipa file was successfully uploaded to ITunesConnect.

XCode 4.3 code signing errors

Before Xcode 4.3, I used this method to submit applications to the app store:
-- Compile the application with the appropriate signing certificate which was configured inside the application's build settings
-- Distribute the application into the app store or clients using Xcode's built in submission process. When I was asked to select the signing certificate with which to sign the app, I always selected "Don't Resign".
However, the "Don't Resign" option does not exist in Xcode 4.3. Therefore, my application is resigned, and I always end up with an error saying that the code sign verification failed.
Is there any way around this problem?
I have found out that the compilation errors about code signing are due to a bug in Xcode 4.3. As many other have pointed out in Apple's developer forums, and myself, there are many cases where Xcode will complain about code signing your application if your application contains an image bundle! So, I remove the bundle with the images, and re-imported the images as separate files. I was able to compile the application for Ad Hoc this way, whereas it wouldn't compile with the bundle.
Also, as far as "Don't Resign" is concerned, I noticed that even if the application is already code signed in another step, Xcode 4.3 became smart enough to not re-sign the application with the same certificate, even if it appears to not give you the chance to not to! That's what I have verified with Ad Hoc builds. I will soon try that with production builds.
So, Xcode 4.3 became smarter in one way, and dumber into the other. Apple needs to fix this problem with the bundles, SOON!
Yes, there is a way. Before it used to default to whatever code sign it could find and auto-embed it into your apps. Right now its bugged.
To solve it, you would have to go through the steps of obtaining a new certificate and its private/public key. 3 step process:
Make sure you completely delete your old certs and keys by going to Applications > Utilities > Keychain Access. Then Deleting the certificates and private keys associated with your Developer account.
After deleting all that info head Here to generate a new certificate for your app. Download and import to your login keychain
3.In Xcode open your project. Head to your root project folder > targets > build settings and attach the new correct certificates to code sign your app correctly.
If you are unsure about the code-signing process. Either go here or go to the dev provisioning profile under distribution you have some (REALLY OUTDATED) examples to point your way

Resources