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); } } }