Early on in this project I made the error of not having the prefix com
in the bundle identifier. Now I am ready to test flight and I have an invalid bundle identifier.
Currently, my bundle identifier is mycompany.myProject
but I want it to be com.mycompany.myproject
. I have no problem switching to the desired bundle id for archiving the app and uploading to the app store.
The steps I took to switch the app to the appropriate bundle identifier:
However, the app crashes fatally with this error.
*** Terminating app due to uncaught exception 'InvalidPathValidation', reason: '(child:) Must be a non-empty string and not contain '.' '#' '$' '[' or ']''
The point at which this error arises is when a Firebase method is called
- (NSString *) getUid {
return [FIRAuth auth].currentUser.uid;
}
This method returns nil
which feeds a method for retrieving data from Firebase. This method's nil
return causes the InvalidPathValidation
error.
I am authenticating with Facebook. I thought maybe the reason this is returning nil
is that the app doesn't know who is logged in, because I was never prompted to login (my app checks if your logged in through Facebook in viewWillAppear
on the opening ViewController). However this doesn't make sense because the only change I made was changing the bundle ID. I have been stuck on this problem for almost a week.
I am specifically wondering what do I need to change for Firebase to accept the bundle identifier changes.
The solution was to create a new app within the same firebase project
The above answer may have been correct at the time of publication but what helped me was changing the bundle identifier in the Signing and Capabilities settings of the Target. Then, I went to the GoogleService-Info.plist
file and I changed the value for BUNDLE_ID
. Then, I hit Command +B
to build the app and I ran the app. It worked just fine for me and I didn't get any errors.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With