quickstart-unity
quickstart-unity copied to clipboard
[Bug] Spammy error message from Firebase Editor tool when trying to build Xcode project on Windows
I'm using Windows to develop a mobile game for both iOS and Android. For iOS, I export to an Xcode project and build it on my less-powerful Mac (which is only for builds as developing on this Mac is not an option).
I'm using Firebase Cloud Messaging for Android, but not for iOS.
When switching to iOS in the Editor, I repeatedly get the error "Firebase iOS builds are not supported on Windows. Please build on a OSX machine instead."
I see no option to disable or suppress this error, and no configuration to prevent checking for iOS platform build type. This configuration is my feature request.
I found a few problems with this issue:
- I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.
- This issue does not seem to follow the issue template. Make sure you provide all the required information.
@calebvetter
We definitely did not consider about this use-case: to build Xcode project on Windows.
This annoying log is from our Firebase editor tool, specifically XcodeProjectPatcher.cs
// Verify that the build environment *really* supports iOS.
private static void CheckBuildEnvironment() {
// If iOS is the selected build target but we're not on a OSX machine
// report an error as pod installation will fail among other things.
if (EditorUserBuildSettings.activeBuildTarget == BuildTarget.iOS &&
Application.platform == RuntimePlatform.WindowsEditor) {
Debug.LogError(DocRef.IOSNotSupportedOnWindows);
}
}
Perhaps we can remove this error log.
But I think the right thing to do is to make sure that everything works fine when building Xcode project on Windows machine. I do have some concerns since EDM4U requires Cocoapods to generate xcworkspace. And installing Cocoapods on Windows is not a very pleasant experience. Could you tell us how you make Cocoapods work on Windows? Or did you actually installed it?
This is legitimately annoying. I'll mark it as a bug.
Actually, I'm not going to be using Firebase for iOS notifications since I have that working just fine without it. I've imported the Firebase package to manage push notifications on Android only.
So I'd recommend having an option for the user to select which platforms (iOS or Android) they'd like Firebase to target, and only show errors/warnings for the selected platforms.
Or perhaps base the platform targeting on whether or not the respective config files are present in the Assets folder (google-services.json for Android, and GoogleService-Info.plist for iOS).
In my case, I only have the google-services.json file. The Firebase panel in Unity recognizes this, yet still shows the error message in the console.
Hi @calebvetter, Thanks for the info. Looks like you are using FCM just for Android but are you able to export an XCode project from Unity in Windows without much trouble? As @chkuang-g mentioned, EDM4u requires cocoapods to create the xcworkspace. The warning exists mainly due to the difficulty in doing this exact step from Windows.
I haven't tried it but wondering if you could suppress the warning by unchecking platforms in Unity's Inspector window for Firebase DLLs (Assets/Firebase/Editor and Plugins/iOS).
Hi @vimanyu, Yes, I can export the project from Unity (Windows) to an XCode project folder, then copy it over to my Mac and distribute through XCode as normal with no problems. It works fine even with the FCM error in the Unity editor.
I have tried unchecking platforms (including Editor) as well as removing the files from the folder completely. It either rechecks the Editor platform or won't compile.
This error message is driving me and my team crazy. We develop on windows machines - including for iOS. There are 3 ways we build for iOS from our Windows machines.
- Unity Cloud Build
- Headless networked Mac
- iOS Project Builder for Windows
I understand it's purpose, but please add a way to suppress this message from spamming the console.
This error message is driving me and my team crazy. We develop on windows machines - including for iOS. There are 3 ways we build for iOS from our Windows machines.
- Unity Cloud Build
- Headless networked Mac
- iOS Project Builder for Windows
I understand it's purpose, but please add a way to suppress this message from spamming the console.
Seconding this.
@chkuang-g, what would be the right way to get traction on suppressing this message on Windows machines? Honestly, I'm not sure why this message exists. If you're on a Windows machine, you're not natively building iOS projects in Unity anyway, so how does this message help?
My team and I have been experiencing the same issue with the "Firebase iOS builds are not supported on Windows" log message, which has been causing us a lot of annoyance for us. We are curious if there have been any updates or solutions to this problem, as we would like to suppress the log permanently. Any help would be greatly appreciated, thank you.
Hey there, any progress on this? I recently started using Firebase and I use my Windows machine 90% of the time whilst working on a iOS game as it's simply a nicer setup for me than using my Macbook Pro. Would be nice to not get an error message after every code change that is totally unrelated to the code I just changed.
Also pitching in here - we use dockerized Linux build agents and they are able to perform a build just fine, but when there are some issues, I am unable to debug the iOS build on my local Windows machine. There is clearly no need for OS X specifically since building works just fine on Linux.
I sent a pull request to firebase-unity-sdk repository. https://github.com/firebase/firebase-unity-sdk/pull/754