连接到不同 Firebase 项目的 .NET MAUI 应用程序将记录到一个项目

问题描述 投票:0回答:1

我有一个 .NET 8 MAUI 项目,对于使用我的应用程序的品牌具有不同的构建配置。每个配置都有一个 Android Manifest、google-services.json 等,因此它们在不同的应用程序 ID 下构建,并且应该连接到不同的 firebase 项目。我尚未在 iOS 上进行测试,但目前在 Android 上无法按预期工作。

在我的 csproj 中,我的属性设置如下:

<!-- I have one for release as well -->
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='[Brand]Debug|net8.0-android|AnyCPU'">
    <AndroidSigningKeyStore>Platforms\Android\Keystores\[brand].keystore</AndroidSigningKeyStore>
    <AndroidManifest>Platforms\Android\[Brand]\AndroidManifest.xml</AndroidManifest>
    ...
</PropertyGroup>

...

<ItemGroup Condition="(('$(Configuration)' == '[Brand]Debug' Or '$(Configuration)' == '[Brand]Release') And '$(TargetFramework)' == 'net8.0-android')">
    <None Remove="Platforms\Android\[MainBrand]\google-services.json" />
    <GoogleServicesJson Include="Platforms\Android\[Brand]\google-services.json" />
</ItemGroup>

特定于构建的清单、密钥库、图像等都很好,但在项目组中,它似乎没有拾取不同的 google-services.json,因此来自所有构建配置的所有日志(分析和崩溃)都是出现在我的主品牌的 firebase 日志中。我的 csproj 中的其他任何地方都没有提到 google-services,每个 json 都是直接从相应的 firebase 项目下载的,它们看起来确实正确,并且位于正确的文件夹中。

知道为什么会发生这种情况吗?

android firebase maui crashlytics .net-8.0
1个回答
0
投票

我发现,我在 strings.xml 中硬编码了主应用程序 ID,这是我在初始设置中遵循教程时必须完成的。我只是删除了它,以便它动态地获取它,现在它似乎可以工作了。所以这是我自己的错,只影响了 Android,而不是 iOS。

© www.soinside.com 2019 - 2024. All rights reserved.