Beispiel #1
0
    public bool?LoadJsonToLocal(string strFileName)
    {
        // 예외처리 : 오버라이드 체크
        if (null == LoadJsonTable(null, null))
        {
            return(Return(null));
        }

        // 예외처리 : 로드체크
        SHJson pJson = new SHJson();

        if (null == pJson.LoadToPersistent(strFileName))
        {
            pJson.LoadToStreamingForLocal(strFileName);
        }

        if (false == pJson.CheckJson())
        {
            return(Return(false));
        }

        Initialize();

        return(Return(LoadJsonTable(pJson.Node, m_strFileName)));
    }
Beispiel #2
0
    // 인터페이스 : Json파일 로드
    public bool?LoadJson(string strFileName)
    {
        // 예외처리 : 오버라이드 체크
        if (null == LoadJsonTable(null, null))
        {
            return(Return(null));
        }

        // 예외처리 : 로드체크
        SHJson pJson = new SHJson(strFileName);

        if (false == pJson.CheckJson())
        {
            return(Return(false));
        }

        Initialize();

        return(Return(LoadJsonTable(pJson.Node, m_strFileName)));
    }
    // 인터페이스 : CDN에서 정보파일 다운로드
    public bool DownloadByCDNToSync(string strURL)
    {
        // URL이 없으면 다운받지 않는다.
        if (true == string.IsNullOrEmpty(strURL))
        {
            return(false);
        }

        WWW pWWW = Single.Coroutine.WWWOfSync(new WWW(string.Format("{0}/{1}.json", strURL, m_strFileName)));

        if (false == string.IsNullOrEmpty(pWWW.error))
        {
            return(false);
        }

        SHJson pJson = new SHJson();

        pJson.SetJsonNode(pJson.GetJsonParseToString(pWWW.text));
        LoadJsonTable(pJson.Node, m_strFileName);

        return(true);
    }
    // 인터페이스 : 정보파일 다운로드
    public void DownloadByCDN(Action pComplate)
    {
        // 서버정보파일(ServerConfiguration.json)에 URL이 없으면 패치하지 않는다.
        if (true == string.IsNullOrEmpty(SHPath.GetURLToBundleCDN()))
        {
            pComplate();
            return;
        }

        Single.Coroutine.WWW((pWWW) =>
        {
            if (true == string.IsNullOrEmpty(pWWW.error))
            {
                SHJson pJson = new SHJson();
                pJson.SetJsonNode(pJson.GetJsonParseToByte(pWWW.bytes));
                LoadJsonTable(pJson.Node, m_strFileName);
                pComplate();
            }
            else
            {
                Debug.LogErrorFormat("Error!!! Download AssetBundleInfo.json : (Error : {0}, URL : {1}", pWWW.error, pWWW.url);
            }
        }, new WWW(string.Format("{0}/{1}.json", SHPath.GetURLToBundleCDNWithPlatform(), m_strFileName)));
    }
    // 인터페이스 : CDN에서 정보파일 다운로드
    public void DownloadByCDN(Action pComplate, string strURL)
    {
        // URL이 없으면 다운받지 않는다.
        if (true == string.IsNullOrEmpty(strURL))
        {
            pComplate();
            return;
        }

        Single.Coroutine.WWW((pWWW) =>
        {
            if (true == string.IsNullOrEmpty(pWWW.error))
            {
                SHJson pJson = new SHJson();
                pJson.SetJsonNode(pJson.GetJsonParseToString(pWWW.text));
                LoadJsonTable(pJson.Node, m_strFileName);
                pComplate();
            }
            else
            {
                Debug.LogErrorFormat("Error!!! Download ServerConfiguration.json : (Error : {0}, URL : {1}", pWWW.error, pWWW.url);
            }
        }, new WWW(string.Format("{0}/{1}.json", SHPath.GetURLToServerConfigurationCDN(), m_strFileName)));
    }