Firebase 以编程方式更改结构API密钥和生成密钥

Firebase 以编程方式更改结构API密钥和生成密钥,firebase,react-native,crashlytics,google-fabric,Firebase,React Native,Crashlytics,Google Fabric,我有一个应用程序只针对一小部分用户,而确定用户是否属于该用户的唯一方法是登录 因此,我希望Fabric在用户登录后开始收集有关应用程序使用情况的数据,以消除Fabric仪表板中的噪音(从下载应用程序的随机用户收集的数据) 需要完成的工作: 一旦用户成功登录,Fabric应开始跟踪用户活动 应该可以在运行时更改结构API密钥和构建机密,而不是在调试和发布之间的构建时间 结构API密钥和构建机密应在运行时以编程方式设置(使用类似Fabric.with()或Crashlytics.startWith

我有一个应用程序只针对一小部分用户,而确定用户是否属于该用户的唯一方法是登录

因此,我希望Fabric在用户登录后开始收集有关应用程序使用情况的数据,以消除Fabric仪表板中的噪音(从下载应用程序的随机用户收集的数据)

需要完成的工作:

  • 一旦用户成功登录,Fabric应开始跟踪用户活动
  • 应该可以在运行时更改结构API密钥和构建机密,而不是在调试发布之间的构建时间
  • 结构API密钥和构建机密应在运行时以编程方式设置(使用类似
    Fabric.with()
    Crashlytics.startWithAPIKey()
    ),而不是在构建过程中设置
该应用程序主要是用React Native编写的。我也在考虑使用Firebase或其他方法来跟踪应用程序的使用情况

目前我正在以下位置设置API密钥构建机密

Xcode中的构建阶段(运行脚本阶段):

if [ "${CONFIGURATION}" = "Release" ]; then
"${PODS_ROOT}/Fabric/run" <RELEASE_API_KEY> <RELEASE_BUILD_SECRET>
else
"${PODS_ROOT}/Fabric/run" <DEBUG_API_KEY> <DEBUG_BUILD_SECRET>
fi
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Fabric</key>
    <dict>
        <key>APIKey</key>
        <string>${FABRIC_API_KEY}</string>
        <key>Kits</key>
        <array>
            <dict>
                <key>KitInfo</key>
                <dict/>
                <key>KitName</key>
                <string>Crashlytics</string>
            </dict>
        </array>
    </dict>
    ...
</dict>
</plist>