Изменение API-интерфейса Fabric и Build Secret программно - PullRequest
0 голосов
/ 28 января 2019

У меня есть приложение, которое предназначено только для небольшой аудитории, и единственный способ определить, принадлежит ли пользователь к этой аудитории, - войти в систему.

Поэтому я хотел бы, чтобы Fabric начала собирать данные оиспользование приложения после того, как пользователь вошел в систему, чтобы избавиться от шума на приборной панели Fabric (данные, полученные от случайных пользователей, скачавших приложение).

Что необходимо сделать:

  • Fabric должен начать отслеживание активности пользователя после успешного входа в систему
  • Должна быть возможность изменения ключа API API Fabric и секрета сборки во время выполнения вместо времени сборки между debug и release
  • Ключ Fabric API и Секрет сборки следует устанавливать программно (используя что-то вроде Fabric.with() или Crashlytics.startWithAPIKey()) при времени выполнения, а не во время сборки

Приложение написано в основном на React Native.Я также рассматриваю возможность использования Firebase или других альтернатив для отслеживания использования приложений.

В настоящее время я устанавливаю Ключ API и Build Secret в следующих местах:

Фазы сборки в 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

Info.plist:

<?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>
...