You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
NSInternalInconsistencyException crash - Actions added to UIAlertController of style UIAlertActionStyleCancel must have a title when running in UIUserInterfaceIdiomPhone/Pad #483
One of your localized strings for the cancel action is being returned as an empty string and crashing our app.
I suspect the issue is either on this line of code or this one
To Reproduce
When logging in your API needs to return the following error code.
One of your locales might be returning that empty string. We support the following in our app:
Expected behavior
App not to crash when that error is returned by your API
Screenshots
Environment
Device: iPhone 11, iPhone 12 Pro Max, iPhone 15 Pro Max, iPad Pro 13-inch (M4
OS: iOS 17.5.1, 17.6.1, iOS 18.0.1, iPad OS 17.5.1
changed the title [-]NSInternalInconsistencyException - Actions added to UIAlertController of style UIAlertActionStyleCancel must have a title when running in UIUserInterfaceIdiomPhone/Pad[/-][+]NSInternalInconsistencyException crash - Actions added to UIAlertController of style UIAlertActionStyleCancel must have a title when running in UIUserInterfaceIdiomPhone/Pad[/+]on Oct 9, 2024
Hello! Thanks for submitting this issue. I'm curious if you're still running into this and if so, would you mind adding some repro steps or a recording of this happening? I'm unable to reproduce this on my end. I took a look at the two code snippets you sent and additionally when when the kScreenlockRequiredError is logged but didn't see anything unusual.
Hey there 👋 Sadly we couldn't reproduce this either as I mentioned I can't make Charles Proxy working together with the Google sign/login flows to manipulate that error.
We now have less occurrences of the crash but it is sill happening. Some stats:
Our peak of crashes happened on the 9th of October.
In the last 30 days we have had 65 crash events affecting 22 users
OS/Device Distribution
`
Since this method can return a null string, would it be possible that this line of code and this handle the null value and replace it with an empty string ?
Hello! Going to spend some time on this this week. After some digging, I'm still not able to reproduce. Would anyone be able to share what some apps they experienced this crash on? Has anyone been able to reproduce locally?
When checking the GoogleSignIn.xcframework file included in the compressed archive downloaded via the Firebase SDK using the file command as follows:
"file GoogleSignIn.xcframework/ios-arm64/GoogleSignIn.framework/GoogleSignIn"
The result is:
"current ar archive"
However, when checking the FBSDKLoginKit.xcframework file downloaded from another third-party vendor such as Facebook using the same method:
"file FBSDKLoginKit.xcframework/ios-arm64/FBSDKLoginKit.framework/FBSDKLoginKit"
The result is different:
"Mach-O 64-bit dynamically linked shared library arm64"
Could you please check whether the build script options used to generate GoogleSignIn.xcframework include an option that causes static linking?
Since the Firebase SDK provides GoogleSignIn.xcframework in the form of a static library, this issue can be resolved by adding the GoogleSignIn.bundle file to "Copy Bundle Resources" menu
Activity
[-]NSInternalInconsistencyException - Actions added to UIAlertController of style UIAlertActionStyleCancel must have a title when running in UIUserInterfaceIdiomPhone/Pad[/-][+]NSInternalInconsistencyException crash - Actions added to UIAlertController of style UIAlertActionStyleCancel must have a title when running in UIUserInterfaceIdiomPhone/Pad[/+]brnnmrls commentedon Oct 17, 2024
Hello! Thanks for submitting this issue. I'm curious if you're still running into this and if so, would you mind adding some repro steps or a recording of this happening? I'm unable to reproduce this on my end. I took a look at the two code snippets you sent and additionally when when the
kScreenlockRequiredErroris logged but didn't see anything unusual.trant commentedon Oct 18, 2024
Hey there 👋 Sadly we couldn't reproduce this either as I mentioned I can't make Charles Proxy working together with the Google sign/login flows to manipulate that error.
We now have less occurrences of the crash but it is sill happening. Some stats:
Our peak of crashes happened on the 9th of October.
In the last 30 days we have had 65 crash events affecting 22 users
OS/Device Distribution`
Since this method can return a
nullstring, would it be possible that this line of code and this handle thenullvalue and replace it with an empty string ?nrurnru commentedon Oct 19, 2024
#373
picklebento commentedon Feb 27, 2025
This issue is still happening for my corporate account today. Would like to use this as a bump to increase visibility.
brnnmrls commentedon Mar 4, 2025
Hello! Going to spend some time on this this week. After some digging, I'm still not able to reproduce. Would anyone be able to share what some apps they experienced this crash on? Has anyone been able to reproduce locally?
I find it odd that something like -[GIDEMMErrorHandler cancelString] would return an empty string.
jj2372-collab commentedon Mar 25, 2026
jj2372-collab commentedon Mar 26, 2026
Since the Firebase SDK provides GoogleSignIn.xcframework in the form of a static library, this issue can be resolved by adding the GoogleSignIn.bundle file to "Copy Bundle Resources" menu