【发布时间】:2022-09-30 08:22:07
【问题描述】:
我想得到this parameter。 我正在尝试使用此代码执行此操作。但它只能在电脑上工作。
这是我所有的代码,但我只需要从远程配置中获取参数并初始化 firebase 分析。
我无法弄清楚问题出在哪里,因为关于统一的指南很少。 我已经尝试了 3 天,请帮忙。
using UnityEngine;
using Firebase.RemoteConfig;
using System;
using System.Collections.Generic;
using UnityEngine.SceneManagement;
using System.Threading.Tasks;
using Firebase.Crashlytics;
using Firebase.Analytics;
using Photon.Pun;
using TMPro;
using UnityEngine.UI;
public class GameOpening : MonoBehaviour
{
[SerializeField] private Text _versionText;
[SerializeField] private RemoteConfigSavings _remoteConfigSavings;
private Firebase.DependencyStatus dependencyStatus = Firebase.DependencyStatus.UnavailableOther;
private int _version = -1;
private int _receivedVersion
{
get => _version;
set
{
_version = value;
UpdateConfig();
}
}
private void Start()
{
AwakeFireBase();
Invoke(\"ToNextScene\", 1);
}
private void ToNextScene()
{
if(_version!=-1) PhotonNetwork.LoadLevel(1);
else Invoke(\"ToNextScene\", 1);
}
private void AwakeFireBase()
{
if(Debug.isDebugBuild)
{
var configSettings = new ConfigSettings();
configSettings.MinimumFetchInternalInMilliseconds = 0;
FirebaseRemoteConfig.DefaultInstance.SetConfigSettingsAsync(configSettings);
}
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
{
FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
dependencyStatus = task.Result;
if (dependencyStatus == Firebase.DependencyStatus.Available)
{
//InitializeFirebase();
GetGameVersion();
}
else
{
Debug.LogError(\"Could not resolve all Firebase dependencies: \" + dependencyStatus);
}
});
}
private void InitializeFirebase()
{
var defaults = new System.Collections.Generic.Dictionary<string, object>
{
{\"someThing\", \"asdf\"},
{\"some2\", 12323}
};
FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults).ContinueWith(task=> { GetGameVersion(); });
Debug.Log(\"Remote config ready!\");
}
private void GetGameVersion()
{
var remoteConfig = FirebaseRemoteConfig.DefaultInstance;
remoteConfig.FetchAndActivateAsync().ContinueWith(task =>
{
IDictionary<string, ConfigValue> values = remoteConfig.AllValues;
values.TryGetValue(\"VERSION\", out ConfigValue objValue);
int version = Convert.ToInt32(objValue.StringValue);
_receivedVersion = version;
_versionText.text = version.ToString();
});
}
private void UpdateConfig()
{
_remoteConfigSavings.Version = _version;
_remoteConfigSavings.SaveObject();
}
}
标签: firebase unity3d firebase-remote-config