Как прочесть Json файл в Unity3d для Android

236
16 января 2018, 10:12

Есть следуюший код для чтения файла:

public void readPurchase(){
    string  path;
    #if UNITY_EDITOR
    path = "/StreamingAssets/purchase.json";
    #elif UNITY_ANDROID
    path = "jar:file://" + Application.dataPath + "!/assets/purchase.json";
    #endif
    StartCoroutine (jsonReadCorout(path));
    string json = File.ReadAllText(Application.dataPath + path);
    itemsContent = JsonUtility.FromJson<Main> (json); 
    bundleForPing = itemsContent.bundleID;
}
IEnumerator jsonReadCorout(string path){
    WWW www = new WWW(path);
    yield return www;
    {
        Debug.LogError ("Can't read");
    }
}

файл находится в папке StreamingAssets, у меня не правильный путь к нему но не могу понять где ошибка.

Answer 1

Всё просто оказалось...

private IEnumerator ReloadFile(){
    WWW data = new WWW(Application.streamingAssetsPath+"/"+"purchase.json");
    yield return data;
        itemsContent = JsonUtility.FromJson<Main> (data.text); 
        bundleForPing = itemsContent.bundleID;
}

Файл purchase.json нужно ставить в папку StreamingAssets.

READ ALSO
How use proxy in smtpclient(С#)?

How use proxy in smtpclient(С#)?

Приветствую, подскажите пожалуйста каким образом можно подключить прокси (http\s | socks4\5)Имеется вот такой метод:

221
Замена document.ready [дубликат]

Замена document.ready [дубликат]

На данный вопрос уже ответили:

226
Как сохранить store redux в localstorage

Как сохранить store redux в localstorage

Добрый день, подскажите, как добавить store redux в localstorage (на данный момент обнуляется при перезагрузке): store:

312
Написание тела метода в одну строчку javaScript [требует правки]

Написание тела метода в одну строчку javaScript [требует правки]

Как написать тело метода в одну строчку используя ';' ТОЛЬКО ОДИН РАЗ, если в коде несколько операций?

262