예제 #1
0
        private IEnumerator LoadAsync <T>(string url, Action <T> callback)
        {
            permissions.CheckReadStorage();
            using (UnityWebRequest uwr = UnityWebRequest.Get(url))
            {
                yield return(uwr.SendWebRequest());

                if (uwr.isNetworkError || uwr.isHttpError)
                {
                    Debug.LogError($"LocalJsonDatabase: LoadAsync: Url: {url} Error: {uwr.error}");
                }
                else
                {
                    var text = uwr.downloadHandler.text;
                    // TODO: what if this is null? is this a problem?
                    var data = JsonUtility.FromJson <T>(text);
                    callback(data);
                }
            }
        }