Exemple #1
0
        /** 获取cdn资源下载路径(WWW用) */
        public static string getCDNResourcePath(string url, int resourceVersion)
        {
            if (!ShineSetting.isRelease)
            {
                return(getStreamingAssetsPath(url, true));
            }

            StringBuilder sb = StringBuilderPool.create();

            sb.Append(ShineGlobal.cdnSourcePath);
            sb.Append('/');
            sb.Append(getPlatformName());
            sb.Append("/resource_");
            sb.Append(resourceVersion);
            sb.Append('/');
            sb.Append(url);

            return(StringBuilderPool.releaseStr(sb));
        }
Exemple #2
0
        /** 获取资源路径(streamingAsset)(needPlatform:是否需要运行平台前缀)(forWWW:是否www加载) */
        private static string toGetPath(int type, string url, bool forWWW)
        {
            StringBuilder sb = StringBuilderPool.create();

            if (forWWW && (type != StreamingAssetsPath || SystemControl.platform != RuntimePlatform.Android || !ShineSetting.isRelease))
            {
                sb.Append("file:///");
            }

            //调试模式
            if (!ShineSetting.isRelease && type == StreamingAssetsPath)
            {
                sb.Append(_dataPath);
                sb.Append(ShineGlobal.sourcePath);
                sb.Append('/');

                if (_isCommonResourceFunc != null && _isCommonResourceFunc(url))
                {
                    sb.Append("common/");
                }
                else
                {
                    sb.Append(getPlatformName());
                    sb.Append('/');
                }
            }
            else
            {
                sb.Append(toGetRootPath(type));

                if (type != StreamingAssetsPath)
                {
                    sb.Append("/resource");
                }

                sb.Append('/');
            }

            sb.Append(url);

            return(StringBuilderPool.releaseStr(sb));
        }
Exemple #3
0
        /** 输出数据字典 */
        public static void printDataDic <T>(IntObjectMap <T> dic) where T : BaseData
        {
            StringBuilder sb = StringBuilderPool.create();

            IntObjectMap <T> fDic;

            if (!(fDic = dic).isEmpty())
            {
                int[] keys   = fDic.getKeys();
                T[]   values = fDic.getValues();
                int   fv     = fDic.getFreeValue();
                int   k;
                T     v;

                for (int i = keys.Length - 1; i >= 0; --i)
                {
                    if ((k = keys[i]) != fv)
                    {
                        v = values[i];

                        sb.Append(k);
                        sb.Append(":");

                        if (v == null)
                        {
                            sb.Append("null");
                        }
                        else
                        {
                            sb.Append(v.toDataString());
                        }

                        sb.Append("\n");
                    }
                }
            }

            Ctrl.log(StringBuilderPool.releaseStr(sb));
        }
Exemple #4
0
        public static void toThrowError(StringBuilder sb, Exception e)
        {
            if (sb.Length > 0)
            {
                sb.Append("\n");
            }

            if (e != null)
            {
                sb.Append(e.Message);
                sb.Append("\n");
            }
            else
            {
                e = new Exception(sb.ToString());
            }

            string es = null;

            if (ShineSetting.needError)
            {
                es = sb.ToString();
            }

            sb.Append(stackTraceToString(e));
            sb.Append("\n");

            string str = StringBuilderPool.releaseStrForThread(sb);

            toLog(str, SLogType.Error);

            if (ShineSetting.needError)
            {
                throw new Exception(es);
            }
        }
Exemple #5
0
        public LogInfo(string head)
        {
            _sb = StringBuilderPool.create();

            putHead(head);
        }
Exemple #6
0
 public LogInfo()
 {
     _sb = StringBuilderPool.create();
 }
Exemple #7
0
 /** 释放并获取string */
 public string releaseStr()
 {
     return(StringBuilderPool.releaseStr(sb));
 }
Exemple #8
0
 public DataWriter()
 {
     sb = StringBuilderPool.create();
 }