"ITMS-90853: Invalid font" on TestFlight external testing - ios

I have uploaded build with Xcode 12 - iOS 14. I am getting following error in the TestFlight external testing.
Note: Build is working fine in internal testing.
App Store Connect Dear Developer,
We identified one or more issues with a recent submission for
TestFlight review for your app, "XYZ" 1.0 (1.0.1). Please correct the
following issues, then upload again.
ITMS-90853: Invalid font - There was an error validating the font
named '' at 'XYZ.app/NORMAN.TTF'. Font basic parsability.
ITMS-90853: Invalid font - There was an error validating the font
named '' at 'XYZ.app/FancyPants.ttf'. Font basic parsability.
ITMS-90853: Invalid font - There was an error validating the font
named '' at 'XYZ.app/Alakob.ttf'. Font basic parsability.
ITMS-90853: Invalid font - There was an error validating the font
named '' at 'XYZ.app/AlternateGothicEF-NoTwo_0.ttf'. Font basic
parsability.
ITMS-90853: Invalid font - There was an error validating the font at
'XYZ.app/GothamRounded-Bold.ttf'. Font not supported by platform.
Best regards,
The App Store Team
I also found this apple forum thread but there is no solution provided.
Anyone have the solution for this?

This is font validation errors. But these are coming after the iOS 14 - Xcode 12 update!
I have fixed the fonts by using following software as suggested in this article
– Download and install CR8 Software Solutions free font editor for Mac called Type from here:
Type light
– Open your problem ttf or otf font in the editor (choose File then Open).
– Choose Font then Rename Font then click RENAME button (without making any changes).
– Save your font (choose File then Save As).
– Done!
Re-upload the iOS build after updating this font...

After some research, it looks like iOS still only supports ttf/otf family of fonts and DOES NOT support woff family of fonts. Valid in June 2021 still.
Even if you're shipping a Hybrid app (like Cordova / Capacitor / Ionic thing) and WKWebView perfectly supports woff2 since forever - you'll still get ITMS-90853: Invalid font errors from "App Store Connect" Cerberus.

Related

Here SDK lite for iOS contains unsupported files

We recently integrated the Here SDK lite for iOS in our app and during the submission to the AppStore, we discover that the xcframework contains unsupported files.
ITMS-90853: Invalid font - There was an error validating the font at
'Subito.app/Frameworks/heresdk.framework/style/fonts/FiraGO-Map.woff'.
Font not supported by platform.
ITMS-90853: Invalid font - There was an error validating the font at
'Subito.app/Frameworks/heresdk.framework/style/fonts/DroidSansFallback.woff'.
Font not supported by platform.
ITMS-90853: Invalid font - There was an error validating the font at
'Subito.app/Frameworks/heresdk.framework/style/fonts/FiraGO-Italic.woff'.
Font not supported by platform.
We didn't find any instructions on the official documentation about stripping these files before submitting to the store, but that's what we proceeded to do, since we are not using any UI related component coming from the SDK at the moment. I hope that it's a safe operation (resulting app seems to work fine).
Are there any other folders that could/should be removed from the xcframework before the submission to the store (e.g. style folder)?
The HERE SDK contains several fonts to render map labels in different languages. If you want to strip those files - or if you want to optimize the size of the overall app, you can remove selected fonts. For example, the font with Chinese, Japanese and Korean characters is around 1.7MB. To remove this font, open the heresdk.framework file and remove the following files:
style/fonts/DroidSansFallback.woff
style/fonts/DroidSansFallback.license
When you remove the font, it is recommended to switch the map language to any other language than Chinese, Japanese or Korean.
Check also the map / language documentation with more related info.
This should help at least as a workaround until the faulty fonts are fixed by the HERE SDK team with a newer HERE SDK release.
For your question: You can also remove the related license file.

Can you help in App submission status "Invalid Binary" with error "Invalid Swift Support" and "Missing required icon file"?

I am getting following error in email, when i submit the binary in iTunes app store with Application loader or XCode
Dear developer,
We have discovered one or more issues with your recent delivery for
"simpleExercise". To process your delivery, the following issues must
be corrected:
Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and
resubmit it.
Missing required icon file - The bundle does not contain an app icon for iPad of exactly '167x167' pixels, in .png format .
Once these issues have been corrected, you can then redeliver the
corrected binary.
Regards,
The App Store team
For solve Invalid Swift Support i made EMBEDDED_CONTENT_CONTAINS_SWIFT flag YES and NO one by one.
I tried both and submit app to app store but not able to solve the issue.
AND
For solve Missing required icon file i added app icons files to project bundle.
Please refer below screen shot for all required icons in universal app (iPhone / iPad).
As per apple documentation in above image selected image (Icon-83.5#2x.png) size is 167 X 167.
Though iTunes team can not get this image and send me a email that Missing required icon file.
I am using XCode Version 7.3 (7D175) with Swift 2.2
Can you help me for solve the above both errors?
For "Missing required icon file", you just need to add that icon and I hope you have already done that!
And for the "Invalid Swift Support", I had the issues with Application Loader since Xcode 6.4. So, I started uploading the app from the "Organizer" (Xcode > Window > Organizer > Upload to App Store).
This solves the problem.
Follow This
Open this web site MakeAppIcon and add your 1024 Size icon for resize all size as per apple required.
Then after enter your mail id and you get all size icon with ASSET FOLDER in your mail. Download the mail.
Replace this folder with your current folder.
After expense many hours / days i am getting my answers my self.
In project Info.plist file i have to add particular file Icon-83.5#2x.png which size is 167 X 167.
That's it.
Nothing more.
Please see attached screen shot for more understanding.

Unable to authenticate the package: 721772200.itmsp

I am writing because I have a serious problem - I have bought the Commander Cool game on the cartoonsmart site. However, a serious problem occured. The application cannot be accepted by the iTune Connect validation. I tried to publish it from two different developer accounts and the error still occurs. The error suggests some problems with the certificate but I am sure it is 100% right because I have published more than 20 apps in the App Store as for now. I ask you for help because you are my last hope. The only thing I changed was to add armv6 in Valid Architectures because without it the app could not load.
Error is displayed via iTunes Connect:
"The following issues were found during validation:
Apple's web service operation was not successful
Unable to authenticate the package: 721772200.itmsp
ERROR ITMS-9000: "The bundle 'com. . ' at bundle path 'Payload/CommanderCool.app is not signed using an Apple submission certificate." at SoftwareAssets/SoftwareAsset (MSItmspSoftwareAssetPackage)?
Maybe you have additional errors like a missing 120x120 icon, if that is the case you should follow this
'Missing recommended icon file - The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format'
Fix other problems and then you could be able to submit your app, I was having the same problem.
Check the icon file name in Plist file. This may be occur due to wrong icon file name.
Move your icons and splashs to asset catlogs.
I was also facing this problem in xcode 5, actually i was trying to build code which was written in previous version of xcode (4.3 i guess).
I had the same error. In my case, the iPhone 5 was conected.
Steps:
Disconnect the phone.
Select IOS Device (in simulators).
Then archive.

Invalid binary - missing 568h file

I am trying to submit my app to Apple Store but I am receiving the "invalid binary" message, informing that is missing the launch image for -568h modifier. But the file is in the package. I checked. Some details:
The launch image are localized but not for all languages. They are present for English and some other languages.
In the simulator and in the testing devices the launch image is displayed correctly.
I checked the sizes and are correct
I am using XCode 4.6.3
I recently installed XCode 5 preview but I am using 4.6.3 command line tools.
There is no UILaunchImageFile entry in the plist file (I am using the Default name).
The images do not appear in the Launch Images panel (after I localized them).
What is going on? I don't have any clue.
Check your file names are like above displayed image.
Found the reason. If the launch image is localized it is necessary to provide the set of images for all languages the app supports. I tried that and Apple accepted my binary.
Looks like you have to ensure there are also default startup images in Base.lproj. I'm guessing they are used if you are running on a device that has a language not directly supported by the app in the other *.lproj folders.
Can anyone clarify this.
Works for me now anyway.

iOS. font available on simulator but not on device

Im using custom font in my application and have run into very weird issue. The font is available on the simulator but unavailable on an actual iPad.
1 I'm not confusing font name and file name. The file name is bitdust2.ttf whereas font name is BitDustTwo and this is how i call it and on simulator it is ok.
2 The is not a question of case sensitivity. The font is really unavailable on the device. I know that cause when i do this:
NSLog(#"%#", [UIFont familyNames]);
i see that on simulator my font is included in the familyNames array, but is missing on the iPad. What's wrong? Did you ever encounter such an issue?
(From above comment:) Verify that the font file "bitdust2.ttf" has been added to the target and is copied into the application bundle.
The simulator is, as titled, a simulator, and not a true emulator. The simulator runs the same named APIs, but since the simulator runs on OS X, not iOS, the simulator often has more functionality. For example, the media player classes on the simulator support more types of files (codecs) than on the device because OS X supports more codecs than iOS. On the simulator, you have more Fonts available than on the device.
Here's more details about embedding fonts in an iOS app:
There is a simple way to use custom fonts in iOS 4.
Add your font file (for example, Chalkduster.ttf) to Resources folder of the project in XCode.
Open info.plist and add a new key called UIAppFonts. The type of this key should be array.
Add your custom font name to this array including extension (Chalkduster.ttf).
Now you can use [UIFont fontWithName:#"Chalkduster" size:16] in your application.
It's important not to miss any steps. If you're still having problems, go to the Build Phases tab of your project in XCode and under the Copy Bundle Resources tab, ensure that your font file is included. If not, add it.
Check your device OS version as well as its support for iOs versions. The custom font you used must be compatible with iOS of your device.
Check this answer out. May be you need to have alternate custom font in case it is not supported.
I just had this same problem and after verifying everything was correct:
Font is added to proper key in info.plist "Fonts provided by application"
Font is added to project -> info under same key as the info.plist (this just means that i saved the plist)
Font file is added to the project
Font file is in the project folder
Project -> target -> Build Phases -> Copy bundle resources: contains my font file
File is checked off for being associated with target
I had to download the file again and re-add it.. when i did the file name was changed ... so i think the .ttf file was corrupted
You'll need to embed the font onto the app; instructions are here.

Resources