iOS Builds: This build is invalid in iTunes connect - ios

I recently uploaded an app to the app store and its been processing for a few days now. I went in this morning to check everything out, and on the top bar of iTunes connect, i clicked on iOS builds to see how everything was going and I got a red circle with an exclamation point in it. When I clicked on it, it says "This build is invalid". Does anyone know the cause of this?

Check your email, it tells you exactly what is wrong. In itunes connect it simply says "This build is invalid" which is kind of useless. If you check your email it will most likely be a testflight issue as you included the sdk in your build and its integrated into itunes connect now:
"TestFlight SDK - TestFlight no longer requires an SDK to enable beta testing, crash reporting and analytics. To continue using TestFlight, set up Beta Testing in iTunes Connect and remove references to the SDK from the following executables:"

I was facing the same problem. I solved it by good luck after couple of hours of struggle. This issue was due to cocoa pods. Actually I installed "Alamofire" through cocoapods versions "0.38". I updated the pods for Alamofire 3.1.2. This build successfully got uploaded to the itunes connect but was declared as invalid in itunesConnect.
This reason was Alomofire 3.1.2 required cocoapods version 0.39. But I updated it using 0.38. So it was the issue.
Fix: Normal updating cocoapods by using the cpmmand $ gem install cocoapods, and then updating alamofire would not fix the problem. You will have to :
1. Update cocoapods using $ gem install cocoapods.
2. Delete the existing pod references from your project.
3. Reinstall pods using pod install command.
4. Done

You could validate the app archive trough Xcode and get details of what is the problem. The archives are currently found under Window->Organizer. To validate it you can click the "Validate..." button under the "Upload to App Store..." button. This may help you if you didn't get an email with details for the problem as was my case.

I got the same problem too. and It turns out that I archive the build with Reveal framework reference. I think that's the problem.
In the pass, I made the same mistake and Xcode shows detail error info during uploading. Now it seems not.

I got the same problem too. I write a App with Objective-C and use ios-charts(is swift),and I need to support iOS7,so it is troublesome... and when I upload app to AppStore I get the problem. I submit it again ,but still the problem. then I despair to clean the project and reset the codesiganature,what... that work! I just hehele ... enter image description here

In my case I just Drag and Drop The SDK In folder include info.plist file which is not in use. That's create the issue for me. So find the unused info.plist file and delete it from the Source code. Clean the project folder and Re upload.

Recently I faced the same issue on iTunes Connect and I received an email from apple regarding to TestFlight SDK that I forgot to remove from my project bundle. It says 'TestFlight no longer requires an SDK to enable beta testing' so after removing SDK clean the code, make archive again and upload. That't it!

Related

Xcode: Could not locate installed application. Install claimed to have succeeded, but application could not be found on device

I manually deleted my app from the iPhone and now I get this error message when trying to run it again from Xcode.
I cleaned the build folder, restarted the device, Xcode and the Mac, nothing helps.
I also tried everything that's mentioned here: Install claimed to have succeeded, but application could not be found on device
How do I force a re-installation?
As always, when the question is posted on SO, one finds a solution ;)
I edited the Scheme, setting the build configuration from debug to release and that installed the app again. Changed it back to debug and now it's running again as expected.
I ran into the same issue while testing a app on iOS 13 via XCode 11.0. Building via the legacy system solved it (File > Workspace Settings... > Build System > Legacy Build System).
Hope it helps
I had a similar issue after one of Carthage/XCode updates. It means iOS was not able to install app on the phone. XCode apparently is not able to provide this information directly. The first thing to do is open your phone console - go to Window/Devices and Simulators then select your device and click Open Console. In the console you can search for your app name what should provide you more detailed fail info. In my case it was sth like this:
Applications did fail to install: (
"<LSApplicationProxy: 0x118913b60> com.mydomain.myapp (null) <com.mydomain.myapp <INVALID >:0>"
) (appInfos: (null))
There was another console log few rows before flagging the problem:
0x16f4df000 -[MIExecutableBundle codeSigningInfoByValidatingResources:performingOnlineAuthorization:ignoringCachedSigningInfo:checkingTrustCacheIfApplicable:error:]: 789: Code signing identifier (org.alamofire.Alamofire.iphonesimulator) does not match bundle identifier (org.alamofire.Alamofire.iphoneos) for /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.E83T1l/extracted/myapp.app/Frameworks/Alamofire.framework
There was an issue with one of the frameworks Alamofire I'm using in the project. I changed bundle identifier of the project and build framework again what solved the problem.
Hope it helps!
In my case, the problem was an embedded framework that was not being signed. In the General tab of the project settings, setting the embed setting to 'Embed & Sign' did the trick.
In my case it was a problem with new Development certificate. It's created automatically after Xcode updated to 11 and may not be included in current provisioning profile.
I was facing similar issue in Xcode 11.1. I have fix this issue. Not sure about this solution that it will to work for all or not.
My device iOS version was older then the iOS Xcode target build version.
Steps:
I have put Xcode target Device to iPhone device OS version.
Delete derived data
Start xcode and open project
Clean the project and gererate build and install in device
Note: Please check your developer account, certificate validation and already registered device warning.
Hope this solution will help some peoples. Happy coding.
After trying everything here, for me the solution was to change my distribution profile to use the new Apple distribution certificate that covers all apple platforms. This should be compliant with xcode 11 (if you're not experiencing one of the other million problems since the "upgrade").
The cert change is mentioned here:
https://developer.apple.com/documentation/xcode_release_notes/xcode_11_release_notes
Cert creation instructions here:
https://help.apple.com/developer-account/#/devbfa00fef7
Once done, make sure the correct profile is selected in Signing & Capabilities, and 'Apple Distribution' is selected under Build Setting -> Signing for the appropriate build configurations
A solution that solved this issue for me was to check the signing team for my tests target. Selecting the same development team then meant that my app was able to be built and run on device.
Build system: New Build System
Xcode: Version 11.1
Uninstall all the other apps that are under the same "Organization" or "Bundle Identifier" with your current app and try again.
It works for me. Hope it does for you too.
On your iPhone go to Settings/General/Profiles & Devices/Apple Development: "YOUR APPLE ID" and delete all apps from there. It fixed the problem for me.
It happened to me when trying to launch a watchOS app on a real device.
The only solution that worked was:
Delete iOS app from device
Delete watchOS app from device
Close and reopen Xcode
Clean build folder
I did a Product -> Clean then Build, and it was able to run.
Go to settings on your phone and wipe out all certificates and apps and then install your app again. That helped me
Problem occured on XCode 11
TL;DR:
Try changing Embed option in General=>Section Frameworks, Libraries.. to Do Not Embed (although it sounds strange)
In my General=>Section Frameworks, Libraries.. list are Security.framework and the CocoaPods Pods_projectname.framework amongst others. Default setting of these two was Do Not Embed. Sounded strange to me, so I changed it without need alternating to Embed & Sign or Embed Without Signing. With both options the error occured!
On your iPhone go to Settings/General/Profiles & Devices/Apple Deelopment: "YOUR APPLE ID" and delete all apps from there. It fixed the problem for me.
This was the solution that worked for me.
Please double check the bundle ID of the installed application to see if it is re-applied, this will also cause this problem .I uninstall the app and solve the problem.
In my case i have PROD certificate and trying to install the app in the device, later i changed to development certificate it got installed.
As Marcin's answer suggested, I visited the phone console and in my case, it is this error message:
-[MIFreeProfileValidatedAppTracker _onQueue_addReferenceForApplicationIdentifier:bundle:error:]: 182: This device has reached the maximum number of installed apps using a free developer profile: {(
So if you are signing your app with a Personal Team certificate, make sure that you don't have more than 3 apps.
Read more here: Why can I not install more than three apps?
As for me,
I added a custom key-value to Info.plist of main watchOS application file. That was wrong.
After removing it, all works correctly.
It seems this is not allowed but where is no other information about it.
If you have other under-development apps installed, try uninstalling those you are not using, and run Xcode to install your app again. It works for me.

Unable to install app in simulator Xcode 9 beta

I downloaded Xcode 9 beta recently, and when I tried to run my app in the simulator it is not getting installed. I am getting this error in my Xcode every time I try to run the app.
This app was unable to be installed.
The application used to work in Xcode 8.3.3
Unfortunately, the error message doesn’t explain why the install failed. You can take a look at ~/Library/Logs/CoreSimulator/CoreSimulator.log to see if the rest of the error message is there with more info. If not, you should check out the sim device’s system log:
sudo xcode-select -s /Applications/Xcode-beta.app # if you haven’t already
xcrun simctl spawn booted log show
You can use --predicate to filter that down a bit.
Late answer but might be that can be useful for others. I just get a project with existing watch-kit and custom keyboard code. After change the identifier i got the same error and i spend 1 day to find out why that happens.
I checked everything of bundle id and all version. then i do global search in xcode with old identifier and i found that following.
Here in both .plist file have old WKCompanionAppBundleIdentifier so after i update it with new manually application run again.
IMPORTANT NOTE:
IF YOU ARE JUST CHANGE IDENTIFIER FROM GENERAL TAB THAT DOES NOT MEAN IT UPDATE AT ALL. KINDLY CHECK WITH ALL POSSIBLE PLACES BY SEARCH AND REPLACE IT WITH NEW IDENTIFIER.
XCODE VERSIO: Version 9.0 (9A235)
I ran into this same issue and a quick click on Product > Clean did the trick for me!
If you are using CocoaPods in your project please have a look at this answer: https://stackoverflow.com/a/44533287/221194
Changing the status of the pods subdirectory helped me with my project.
I had a similar issue when installing my App on the IOS simulator (with Xcode 9).
I found the issue (at least for my case), it was due to an unauthorized key (Privacy - Location When In Use Usage Description) in the info.plist of the Watch App.
I have moved this key to the info.plist of the WatchKit Extension and now the App installs again.
I hope it will help others people having the same issue.
change deployment target as per requirement.
select project > GENERAL > DEPLOYMENT TARGET
also check ios version of your device
I had the same issue. Log shows it's an error caused by Google Signin:
FunctionName=-[MobileInstallationHelperService stageItemAtURL:completion:], SourceFileLine=392, NSUnderlyingError=0x7f891e9a1270 {Error Domain=MIInstallerErrorDomain Code=4 "Failed to remove ACL" UserInfo={NSLocalizedDescription=Failed to remove ACL, FunctionName=-[MIFileManager _removeACLAtPath:isDir:error:]
However it works on iOS 9 & 10 simulator.
I got same error and I was using Cocoapods in my project and for me help just update pods.
I ran into this issue in Xcode 9.0 beta 5 after renaming a project that contained an iOS and watchOS app. To fix, I recreated the iOS target.
This issue could be triggered by multiple things however if you take a look at the logs at ~/Library/Logs/CoreSimulator/CoreSimulator.log and it states an error that reads :
NSUnderlyingError=0x7fb51c271ee0 Could not hardlink copy /originPath
to /destinationPath
it's possible that your Build number in your Project Target's settings is set to empty.
Go to Project Target > Identity > Build and set a Build number. You'll have to uninstall the the app in the simulator and re-install it before installing updated versions.
Please check the bundle identifier to solve the issue.
I had the same issue on XCode 9.3.1 when I wanted to add google map framework to my project manually.
To fix the problem I remove the google frameworks from Embedded binaries...

The encryption information is unavailable. Try again. TestFlight

The app is uploaded without errors, but when I press the install button I get this message:
I'm using macOS Sierra 10.12 and Xcode 8.
This has never happened to me in old versions of Xcode. What could be wrong?
TestFlight is currently unavailable, i can't either install from TestFlight or see any of my builds in Itunes Connect. Also my app was in processing for 4 hours, then this happened.
Please check here https://developer.apple.com/system-status/
or this screenshot
Update: Confirmed by Apple
I had the same issue. I never had an issue with setting or not setting the encryption flag. So I thought maybe they made a change today. So I added the key in and it still didn't work. I decided to remove the last build from testing then re-added it. That worked for me. I was immediately able to download and install the app. Hope that helps.
Build another version and upload to Itunes Connect.
Maybe your time uploading have some problem from Apple Server.
I have just checked.
Seems to be working for me this morning now. Incidentally Brad my app had GPUImage embedded in it so just for giggles I also added the "App Uses Non-Exempt Encryption." switch to the embedded GPUImage plist. Not sure if that was relevant.

xcode sumbission the application you have selected does not exist

Has anyone seen such an error ? What does it mean ?
It was an update of already existed app.
Xcode automatically manage provisioning profiles.
Xcode 6.3.2
OS X Yosemite 10.10.3
try to use Application Loader (https://itunesconnect.apple.com/apploader/ApplicationLoader_3.0.dmg)
Had the same problem with Xcode 6.4, but went thru using Application Loader
Or you can open it from Xcode -> Open Developer Tools -> Application Loader
I finally got my binary uploaded to iTunesConnect.
Archive your app in Xcode as normal. (I'm still using 6.2)
In Organizer, select the archive, Export, select Ad Hoc or App Store. This saves an .ipa file.
Open AppLoader, select "Deliver Your App", click "Choose", select the .ipa file from step 2. Follow the prompts.
Notes
Going this route, you won't need to recreate the In-App-Purchase that AppLoader expects when you start from scratch.
I got a warning that the API analysis file being too large, but I think that can be safely ignored.
The uploaded binary has a warning that the entitlement for TestFlight Beta testing is missing, but I don't use that, and it can also be ignored.
If you have xcode < 7.x then you are going to face this problem..What fixed for me was building the project from xcode 6.x(mine 6.4) and then opening xcode > 7.x (mine 7.0) and then uploading app from there...
Note:You dont need to build app from xcode 7.x . Just open the xcode
and select window organizer...select the build and upload...
In my case firstly I installed last Xcode version 7.1
In my application I used GoogleMaps.framework, I opened it's bundle and removed "Executable file" and "CFSupportedPlatforms" from Info.plist, then I did the same to all my added frameworks
Finally fixed this problem, first you need to upload it with Application loader. Cause when the error happen, you can have more detail about it.
This is the Issues I got, and I found that the version numbers are the same as those library in cocoapod or other library. To solve this. Go thought all the info.plist. And change the Bundle versions string, short, and Bundle version to higher value, in my cause version number > 1.3.5.
hope this can help :D
Im stuck with the same issued, solved by download xcode 7 and submit app with it, error gone!. Hope it help everyone!.
I was using atool from a shell script to verify and upload builds to TestFlight, then I found this thread and decided to follow #bwang's advice to use the Application Loader, and it worked!
I didn't have to download ApplicationLoader because it already comes bundled with Xcode 6.4, I just opened Xcode, then from the Dock I right clicked the Xcode icon, and then I selected "Open Developer Tools > Application Loader".
I hope Apple fixes this issue soon, because its breaking many CI tools like jenkins when using it to upload builds using atool.
Encountered the same issue, tried all the options mentioned but no luck, Finally could solve the issue by modifying 3rd parties info.plist
Search all info.plist files in your project and see where each and every plist has "Bundle Identifier". If not add it and submit via application loader.
When Xcode submission isn't working, upload using Application Loader instead:
Archive from Xcode.
Save the resulting .IPA file.
Upload with Application Loader.
That solves this issue and many other times when Xcode upload isn't working. Additionally, if it still fails, it will often give you a more detailed error message output.

AppStore Submission - Missing or invalid signature - com.google.GPPSignIn3PResources

I'm trying to submit an iOS app to AppStore and I'm having the following error:
ERROR ITMS-9000: "Missing or invalid signature. The bundle
'com.google.GPPSignIn3PResources' at bundle path
'Payload/My_app_name.app/GooglePlus.bundle' is not signed using an
Apple submission certificate."
I've submitted this app before I've never had this problem. Does anybody know if there is any recent change?
Update:
I could submit the app about 6 hours before having this error. Then, my app was rejected with this message:
This bundle is invalid - New apps and app updates submitted to the App
Store must be built with public (GM) versions of Xcode 5.1.1 or higher
and iOS 7 SDK. Do not submit apps built with beta software.
After this, couldn't submit anymore.
Update2:
Google has made an announcement about this:
http://googledevelopers.blogspot.com.br/2014/09/an-important-announcement-for-ios.html
A new version was released, solving the problem.
Just remove files below and build your app as usual!
GooglePlus.bundle/GPPSignIn3PResources
GooglePlus.bundle/GPPCommonSharedResources.bundle/GPPCommonSharedResources
GooglePlus.bundle/GPPShareboxSharedResources.bundle/GPPShareboxSharedResources
Google released the version 1.7.1 of the google plus sdk.
I created a new podspec for the 1.7.1 version as the previous owner is not reachable.
Just add into your Podfile:
pod 'googleplus-ios-sdk', '~> 1.7.1'
Adding the --deep flag to Other Code Signing Flags (OTHER_CODE_SIGN_FLAGS) in the Project (not target) settings seems to fix this.
The correct fix is to upgrade to the 1.7.1 version of the Google Plus iOS SDK.
It seems to have been specifically released to fix this problem.
If you diff the 1.7.0 and 1.7.1 bundles you will see that no files were added, but three files were deleted : GPPSignIn3PResources, GPPShareboxSharedResources and GPPCommonSharedResources - the three files that the App Store was complaining about.
Adding --deep flag didn't help me, so I solved the issue in a simple and elegant way (sarcasm detected). I removed Google+ SDK from Podfile, then downloaded SDK from here and installed it in a old-fashioned way.
my solution for Google Plus looked this way
deleted the 3 bundles from frameworks from my project
downloaded new Version 1.7.0 (had to upgrade anyway)
i opened the GooglePlus.bundle and removed 3 files (GPPSignIn3PResources,GPPShareboxSharedResources.bundle,GPPCommonSharedResources.bundle) as all 3 files will give you a warning in itunes
I added the 3 bundles back to frameworks
i tested my Google + login in app ... works
submitted ...
and run into a new issue (arm64 requirement), unrelated to this one :)
I think this should work if you don't need the resource files like login button.
If --deep doesn't work, then chances are that the bundle is simply resources and does not actually have any executable file. Delete its Info.plist and you'll be good. If there's some reason you actually need Info.plist, at least delete the CFBundleExecutable key.
I had the same error when I tried to submit the app with xcode 6.1. Nothing worked and I really tried everything.
Then I found a solution on apple developer forums. It worked for me:
Go into Keychain Access
Go into Login keychain
Delete Apple World Wide Developer Relations Certificate Authority
Go into System keychain
Delete Apple World Wide Developer Relations Certificate Authority
Download new WWDR certificate
Install it in Login keychain (just clicking it did that)
link: https://devforums.apple.com/message/1072465#1072465
This issue appears to have been fixed today by Apple, after being broken for ~24 hours.
Submitting the same app today, with no changes to the .bundle, no longer throws the error.
--deep code signing of the bundle is not required.
(Note that I did not test this with the specific Google bundle that the question references. The Resources Bundle that our app uses, though, now works correctly and no longer throws the error.)
Google just released an updated version 1.7.1, which can be downloaded from their website https://developers.google.com/+/mobile/ios/getting-started. Currently it's still not mentioned in their Release Notes though.
If you're using cocoapods you can copy the current 1.7.0 podspec, create a local one and change all the version references in their to 1.7.1 until the new one is merged into the official cocoapods repo.
You should also remove info.plist files
GooglePlus.bundle/info.plist
GooglePlus.bundle/GPPCommonSharedResources.bundle/info.plist
GooglePlus.bundle/GPPShareboxSharedResources.bundle/info.plist
By removing all Info.plist file form goolepplus.bundle file work for me.

Resources