You’ve just updated your #Xamarin Forms app, it’s perfect and so you send the update via the Application Loader to Apple and…. the Apple servers reject it for some seeming crazy reason.
Don’t worry. It’s not you. Your code is fine. Here’s a checklist I go through to get the app into the approval process every time.
info.plist
Sometimes Visual Studio changes your info.pist and breaks it.
Review it for the common items like CFBundleName, UIDeviceFamily, UIRequiredDeviceCapabilities. I often find that the Assets catalog is missing suddenly.
Check for it:
<key>XSAppIconAssets</key> <string>Resources/Images.xcassets/AppIcons.appiconset</string>
Certificates
This is the most common issue for me, even with Automatic set. Double and triple-check that your certificate and profile are set correctly.
ipa
After you’ve built your application and are ready to upload the ipa, check to make sure that the ipa file doesn’t have 0 file length images. If it does, just delete the bin and obj folders from the solution and rebuild.
To check for missing files in your ipa, right-click the ipa and unzip it. Then right-click the unzipped file and choose Show Package Contents
bin/obj
Sometimes, though rarely, I have to delete the bin and obj from the solution, then go to the Mac and delete the build folder there too, reboot everything and then rebuild. On the Mac the Build folder is in ~/Library/Caches/Xamarin/mtbs/builds – You can delete anything there.