com.xunlei.downloadlib.android.XLLog Java Examples

The following examples show how to use com.xunlei.downloadlib.android.XLLog. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: XLDownloadManager.java    From TVRemoteIME with GNU General Public License v2.0 6 votes vote down vote up
public synchronized int uninit() {
    int i = 9900;
    synchronized (this) {
        if (mRunningRefCount != 0) {
            XLLog.i(TAG, "some function of XLDownloadManager is running, uninit failed!");
        } else if (!(mDownloadManagerState == XLManagerStatus.MANAGER_UNINIT || this.mLoader == null)) {
            if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING) {
                undoMonitorNetworkChange();
            }
            stopGetGuidTimer();
            i = this.mLoader.unInit();
            mDownloadManagerState = XLManagerStatus.MANAGER_UNINIT;
            this.mContext = null;
        }
    }
    return i;
}
 
Example #2
Source File: XLDownloadManager.java    From BtPlayer with Apache License 2.0 6 votes vote down vote up
public synchronized int uninit() {
    int i = 9900;
    synchronized (this) {
        if (mRunningRefCount != 0) {
            XLLog.i(TAG, "some function of XLDownloadManager is running, uninit failed!");
        } else if (!(mDownloadManagerState == XLManagerStatus.MANAGER_UNINIT || this.mLoader == null)) {
            if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING) {
                undoMonitorNetworkChange();
            }
            stopGetGuidTimer();
            i = this.mLoader.unInit();
            mDownloadManagerState = XLManagerStatus.MANAGER_UNINIT;
            this.mContext = null;
        }
    }
    return i;
}
 
Example #3
Source File: XLAppKeyChecker.java    From AndroidDownload with Apache License 2.0 6 votes vote down vote up
private RawItemsEntity getRawItemsEntity(String str) throws KeyFormateException {
    String[] split = str.split(";");
    RawItemsEntity rawItemsEntity = new RawItemsEntity();
    if (split.length <= 0 || split.length > 2) {
        throw new KeyFormateException("raw item length invalid.");
    }
    try {
        this.mAppId = Short.parseShort(split[0]);
        rawItemsEntity.setAppId(this.mAppId);
        if (split.length == 2) {
            try {
                rawItemsEntity.setExpired(new SimpleDateFormat("yyyy-MM-dd", Locale.US).parse(split[1]));
            } catch (ParseException e) {
                throw new KeyFormateException("expired field formate error.");
            }
        }
        return rawItemsEntity;
    } catch (NumberFormatException e2) {
        XLLog.i(TAG, "appId invalid");
        e2.printStackTrace();
        throw new KeyFormateException("app id format error.");
    }
}
 
Example #4
Source File: XLAppKeyChecker.java    From AndroidDownload with Apache License 2.0 6 votes vote down vote up
private AppKeyEntity getKeyEntity() throws KeyFormateException {
    String[] split = this.mAppKey.split("==");
    if (split.length != 2) {
        XLLog.i(TAG, "keyPair length invalid");
        throw new KeyFormateException("error");
    }
    AppKeyEntity appKeyEntity = new AppKeyEntity();
    appKeyEntity.setMD5(split[1]);
    try {
        String replace = split[0].replace('^', '=');
        String str = new String(Base64.decode(replace.substring(2, replace.length() - 2), 0), "UTF-8");
        appKeyEntity.setmRawItems(str);
        XLLog.i(TAG, "items:" + str);
        appKeyEntity.setmItemsEntity(getRawItemsEntity(str));
        return appKeyEntity;
    } catch (UnsupportedEncodingException e) {
        throw new KeyFormateException("error");
    }
}
 
Example #5
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 6 votes vote down vote up
public synchronized int uninit() {
    int i = 9900;
    synchronized (this) {
        if (mRunningRefCount != 0) {
            XLLog.i(TAG, "some function of XLDownloadManager is running, uninit failed!");
        } else if (!(mDownloadManagerState == XLManagerStatus.MANAGER_UNINIT || this.mLoader == null)) {
            if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING) {
                undoMonitorNetworkChange();
            }
            stopGetGuidTimer();
            i = this.mLoader.unInit();
            mDownloadManagerState = XLManagerStatus.MANAGER_UNINIT;
            this.mContext = null;
        }
    }
    return i;
}
 
Example #6
Source File: XLAppKeyChecker.java    From AndroidDownload with Apache License 2.0 6 votes vote down vote up
public boolean verify() {
    try {
        AppKeyEntity keyEntity = getKeyEntity();
        this.mPackageName = "com.xunlei.downloadprovider";
        if (!verifyAppKeyMD5(keyEntity, this.mPackageName)) {
            XLLog.i(TAG, "appkey MD5 invalid.");
            return false;
        } else if (!verifyAppKeyExpired(keyEntity)) {
            return true;
        } else {
            XLLog.i(TAG, "appkey expired.");
            return false;
        }
    } catch (KeyFormateException e) {
        return false;
    }
}
 
Example #7
Source File: XLAppKeyChecker.java    From BtPlayer with Apache License 2.0 6 votes vote down vote up
public boolean verify() {
    try {
        AppKeyEntity keyEntity = getKeyEntity();
        this.mPackageName = "com.xunlei.downloadprovider";
        if (!verifyAppKeyMD5(keyEntity, this.mPackageName)) {
            XLLog.i(TAG, "appkey MD5 invalid.");
            return false;
        } else if (!verifyAppKeyExpired(keyEntity)) {
            return true;
        } else {
            XLLog.i(TAG, "appkey expired.");
            return false;
        }
    } catch (KeyFormateException e) {
        return false;
    }
}
 
Example #8
Source File: XLAppKeyChecker.java    From BtPlayer with Apache License 2.0 6 votes vote down vote up
private AppKeyEntity getKeyEntity() throws KeyFormateException {
    String[] split = this.mAppKey.split("==");
    if (split.length != 2) {
        XLLog.i(TAG, "keyPair length invalid");
        throw new KeyFormateException("error");
    }
    AppKeyEntity appKeyEntity = new AppKeyEntity();
    appKeyEntity.setMD5(split[1]);
    try {
        String replace = split[0].replace('^', '=');
        String str = new String(Base64.decode(replace.substring(2, replace.length() - 2), 0), "UTF-8");
        appKeyEntity.setmRawItems(str);
        XLLog.i(TAG, "items:" + str);
        appKeyEntity.setmItemsEntity(getRawItemsEntity(str));
        return appKeyEntity;
    } catch (UnsupportedEncodingException e) {
        throw new KeyFormateException("error");
    }
}
 
Example #9
Source File: XLAppKeyChecker.java    From TVRemoteIME with GNU General Public License v2.0 6 votes vote down vote up
public boolean verify() {
    try {
        AppKeyEntity keyEntity = getKeyEntity();
        this.mPackageName = "com.xunlei.downloadprovider";
        if (!verifyAppKeyMD5(keyEntity, this.mPackageName)) {
            XLLog.i(TAG, "appkey MD5 invalid.");
            return false;
        } else if (!verifyAppKeyExpired(keyEntity)) {
            return true;
        } else {
            XLLog.i(TAG, "appkey expired.");
            return false;
        }
    } catch (KeyFormateException e) {
        return false;
    }
}
 
Example #10
Source File: XLAppKeyChecker.java    From BtPlayer with Apache License 2.0 6 votes vote down vote up
private RawItemsEntity getRawItemsEntity(String str) throws KeyFormateException {
    String[] split = str.split(";");
    RawItemsEntity rawItemsEntity = new RawItemsEntity();
    if (split.length <= 0 || split.length > 2) {
        throw new KeyFormateException("raw item length invalid.");
    }
    try {
        this.mAppId = Short.parseShort(split[0]);
        rawItemsEntity.setAppId(this.mAppId);
        if (split.length == 2) {
            try {
                rawItemsEntity.setExpired(new SimpleDateFormat("yyyy-MM-dd", Locale.US).parse(split[1]));
            } catch (ParseException e) {
                throw new KeyFormateException("expired field formate error.");
            }
        }
        return rawItemsEntity;
    } catch (NumberFormatException e2) {
        XLLog.i(TAG, "appId invalid");
        e2.printStackTrace();
        throw new KeyFormateException("app id format error.");
    }
}
 
Example #11
Source File: XLAppKeyChecker.java    From MiniThunder with Apache License 2.0 6 votes vote down vote up
public boolean verify() {
    try {
        AppKeyEntity keyEntity = getKeyEntity();
        this.mPackageName = "com.xunlei.downloadprovider";
        if (!verifyAppKeyMD5(keyEntity, this.mPackageName)) {
            XLLog.i(TAG, "appkey MD5 invalid.");
            return false;
        } else if (!verifyAppKeyExpired(keyEntity)) {
            return true;
        } else {
            XLLog.i(TAG, "appkey expired.");
            return false;
        }
    } catch (KeyFormateException e) {
        return false;
    }
}
 
Example #12
Source File: XLDownloadManager.java    From MiniThunder with Apache License 2.0 6 votes vote down vote up
public synchronized int uninit() {
    int i = 9900;
    synchronized (this) {
        if (mRunningRefCount != 0) {
            XLLog.i(TAG, "some function of XLDownloadManager is running, uninit failed!");
        } else if (!(mDownloadManagerState == XLManagerStatus.MANAGER_UNINIT || this.mLoader == null)) {
            if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING) {
                undoMonitorNetworkChange();
            }
            stopGetGuidTimer();
            i = this.mLoader.unInit();
            mDownloadManagerState = XLManagerStatus.MANAGER_UNINIT;
            this.mContext = null;
        }
    }
    return i;
}
 
Example #13
Source File: XLAppKeyChecker.java    From MiniThunder with Apache License 2.0 6 votes vote down vote up
private AppKeyEntity getKeyEntity() throws KeyFormateException {
    String[] split = this.mAppKey.split("==");
    if (split.length != 2) {
        XLLog.i(TAG, "keyPair length invalid");
        throw new KeyFormateException("error");
    }
    AppKeyEntity appKeyEntity = new AppKeyEntity();
    appKeyEntity.setMD5(split[1]);
    try {
        String replace = split[0].replace('^', '=');
        String str = new String(Base64.decode(replace.substring(2, replace.length() - 2), 0), "UTF-8");
        appKeyEntity.setmRawItems(str);
        XLLog.i(TAG, "items:" + str);
        appKeyEntity.setmItemsEntity(getRawItemsEntity(str));
        return appKeyEntity;
    } catch (UnsupportedEncodingException e) {
        throw new KeyFormateException("error");
    }
}
 
Example #14
Source File: XLAppKeyChecker.java    From MiniThunder with Apache License 2.0 6 votes vote down vote up
private RawItemsEntity getRawItemsEntity(String str) throws KeyFormateException {
    String[] split = str.split(";");
    RawItemsEntity rawItemsEntity = new RawItemsEntity();
    if (split.length <= 0 || split.length > 2) {
        throw new KeyFormateException("raw item length invalid.");
    }
    try {
        this.mAppId = Short.parseShort(split[0]);
        rawItemsEntity.setAppId(this.mAppId);
        if (split.length == 2) {
            try {
                rawItemsEntity.setExpired(new SimpleDateFormat("yyyy-MM-dd", Locale.US).parse(split[1]));
            } catch (ParseException e) {
                throw new KeyFormateException("expired field formate error.");
            }
        }
        return rawItemsEntity;
    } catch (NumberFormatException e2) {
        XLLog.i(TAG, "appId invalid");
        e2.printStackTrace();
        throw new KeyFormateException("app id format error.");
    }
}
 
Example #15
Source File: XLAppKeyChecker.java    From TVRemoteIME with GNU General Public License v2.0 6 votes vote down vote up
private AppKeyEntity getKeyEntity() throws KeyFormateException {
    String[] split = this.mAppKey.split("==");
    if (split.length != 2) {
        XLLog.i(TAG, "keyPair length invalid");
        throw new KeyFormateException("error");
    }
    AppKeyEntity appKeyEntity = new AppKeyEntity();
    appKeyEntity.setMD5(split[1]);
    try {
        String replace = split[0].replace('^', '=');
        String str = new String(Base64.decode(replace.substring(2, replace.length() - 2), 0), "UTF-8");
        appKeyEntity.setmRawItems(str);
        XLLog.i(TAG, "items:" + str);
        appKeyEntity.setmItemsEntity(getRawItemsEntity(str));
        return appKeyEntity;
    } catch (UnsupportedEncodingException e) {
        throw new KeyFormateException("error");
    }
}
 
Example #16
Source File: XLDownloadManager.java    From MiniThunder with Apache License 2.0 5 votes vote down vote up
public int stopTask(long j) {
    int i = 9900;
    increRefCount();
    if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING && this.mLoader != null) {
        i = this.mLoader.stopTask(j);
    }
    XLLog.i(TAG, "XLStopTask()----- ret=" + i);
    decreRefCount();
    return i;
}
 
Example #17
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
public synchronized int init(Context context, InitParam initParam, boolean z) {
    int i = XLConstant.XLErrorCode.DOWNLOAD_MANAGER_ERROR;
    int i2 = 0;
    synchronized (this) {
        if (!mIsLoadErrcodeMsg) {
            loadErrcodeString(context);
            mIsLoadErrcodeMsg = true;
        }
        if (!(context == null || initParam == null || !initParam.checkMemberVar())) {
            this.mContext = context;
            mAllowExecution = z;
            if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING) {
                XLLog.i(TAG, "XLDownloadManager is already init");
            } else if (this.mLoader != null) {
                String peerid = getPeerid();
                String guid = getGuid();
                XLLog.i(TAG, "Peerid:" + new String(Base64.encode(peerid.getBytes(), 0)));
                XLLog.i(TAG, "Guid:" + new String(Base64.encode(guid.getBytes(), 0)));
                if (mAllowExecution) {
                    i2 = XLUtil.getNetworkTypeComplete(context);
                }
                i = this.mLoader.init(context, initParam.mAppVersion, "", peerid, guid, initParam.mStatSavePath, initParam.mStatCfgSavePath, i2, initParam.mPermissionLevel);
                if (i != 9000) {
                    mDownloadManagerState = XLManagerStatus.MANAGER_INIT_FAIL;
                    XLLog.e(TAG, "XLDownloadManager init failed ret=" + i);
                } else {
                    mDownloadManagerState = XLManagerStatus.MANAGER_RUNNING;
                    doMonitorNetworkChange();
                    setLocalProperty("PhoneModel", Build.MODEL);
                }
            }
        }
    }
    return i;
}
 
Example #18
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
public int getSessionInfoByUrl(String str, XLSessionInfo xLSessionInfo) {
    if (this.mLoader == null) {
        XLLog.e(TAG, "XLDownloadManager::getSessionInfoByUrl mLoader is null");
        return 9900;
    }
    int sessionInfoByUrl = this.mLoader.getSessionInfoByUrl(str, xLSessionInfo);
    if (9000 == sessionInfoByUrl) {
        return sessionInfoByUrl;
    }
    XLLog.e(TAG, "XLDownloadManager::getSessionInfoByUrl end, ret=[" + sessionInfoByUrl + "]");
    return sessionInfoByUrl;
}
 
Example #19
Source File: XLDownloadManager.java    From MiniThunder with Apache License 2.0 5 votes vote down vote up
public int setBtPriorSubTask(long j, int i) {
    XLLog.d(TAG, "XLDownloadManager::setBtPriorSubTask beg, taskId=[" + j + "] fileIndex=[" + i + "]");
    if (this.mLoader == null) {
        XLLog.e(TAG, "XLDownloadManager::setBtPriorSubTask mLoader is null, taskId=[" + j + "] fileIndex=[" + i + "]");
        return 9900;
    }
    int btPriorSubTask = this.mLoader.setBtPriorSubTask(j, i);
    if (9000 != btPriorSubTask) {
        XLLog.e(TAG, "XLDownloadManager::setBtPriorSubTask end, taskId=[" + j + "] fileIndex=[" + i + "] ret=[" + btPriorSubTask + "]");
        return btPriorSubTask;
    }
    XLLog.d(TAG, " XLDownloadManager::setBtPriorSubTask end, taskId=[" + j + "] fileIndex=[" + i + "]");
    return 9000;
}
 
Example #20
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
public int startDcdn(long j, int i, String str, String str2, String str3) {
    int i2 = 9900;
    increRefCount();
    if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING && this.mLoader != null) {
        i2 = this.mLoader.startDcdn(j, i, str, str2, str3);
    }
    decreRefCount();
    XLLog.d(TAG, String.format("XLDownloadManager::startDcdn ret=[%d] taskId=[%d] subIndex=[%d] sessionId=[%s] productType=[%s] verifyInfo=[%s]", new Object[]{Integer.valueOf(i2), Long.valueOf(j), Integer.valueOf(i), str, str2, str3}));
    return i2;
}
 
Example #21
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
public int stopTaskWithReason(long j, int i) {
    int i2 = 9900;
    increRefCount();
    if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING && this.mLoader != null) {
        i2 = this.mLoader.stopTaskWithReason(j, i);
    }
    XLLog.i(TAG, "XLStopTask()----- ret=" + i2);
    decreRefCount();
    return i2;
}
 
Example #22
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
private void undoMonitorNetworkChange() {
    XLLog.i(TAG, "undoMonitorNetworkChange()");
    if (this.mContext != null && this.mReceiver != null) {
        try {
            this.mContext.unregisterReceiver(this.mReceiver);
            XLLog.i(TAG, "unregister Receiver");
        } catch (IllegalArgumentException e) {
            XLLog.e(TAG, "Receiver not registered");
        }
        this.mReceiver = null;
    }
}
 
Example #23
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
private void doMonitorNetworkChange() {
    XLLog.i(TAG, "doMonitorNetworkChange()");
    if (this.mContext != null && this.mReceiver == null) {
        this.mReceiver = new NetworkChangeReceiver(this);
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
        XLLog.i(TAG, "register Receiver");
        this.mContext.registerReceiver(this.mReceiver, intentFilter);
    }
}
 
Example #24
Source File: XLDownloadManager.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
private XLDownloadManager() {
    this.mLoader = null;
    this.mContext = null;
    this.mReceiver = null;
    this.mAppkeyChecker = null;
    this.mQueryGuidCount = 0;
    this.mLoader = new XLLoader();
    XLLog.init(new File(Environment.getExternalStorageDirectory().getPath(), "xunlei_ds_log.ini").getPath());
}
 
Example #25
Source File: XLAppKeyChecker.java    From AndroidDownload with Apache License 2.0 5 votes vote down vote up
private boolean verifyAppKeyMD5(AppKeyEntity appKeyEntity, String str) {
    String str2 = appKeyEntity.getmRawItems() + ";" + str;
    XLLog.i(TAG, "totalContent:" + str2);
    str2 = XLUtil.getMd5(str2).toLowerCase().replace('b', '^').replace('9', 'b');
    XLLog.i(TAG, "keyEntity getMD5 MD5:" + appKeyEntity.getMD5());
    if (str2.compareTo(appKeyEntity.getMD5()) == 0) {
        return true;
    }
    return false;
}
 
Example #26
Source File: XLDownloadManager.java    From BtPlayer with Apache License 2.0 5 votes vote down vote up
public void run() {
    if (this.m_allow_execution) {
        int networkTypeComplete = XLUtil.getNetworkTypeComplete(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread nettype=" + networkTypeComplete);
        this.this$0.notifyNetWorkType(networkTypeComplete, this.m_loader);
        String bssid = XLUtil.getBSSID(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread bssid=" + bssid);
        this.this$0.notifyWifiBSSID(bssid, this.m_loader);
        XLUtil.NetWorkCarrier netWorkCarrier = XLUtil.getNetWorkCarrier(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread NetWorkCarrier=" + netWorkCarrier);
        this.this$0.notifyNetWorkCarrier(netWorkCarrier.ordinal());
    }
}
 
Example #27
Source File: XLDownloadManager.java    From BtPlayer with Apache License 2.0 5 votes vote down vote up
public int getSessionInfoByUrl(String str, XLSessionInfo xLSessionInfo) {
    if (this.mLoader == null) {
        XLLog.e(TAG, "XLDownloadManager::getSessionInfoByUrl mLoader is null");
        return 9900;
    }
    int sessionInfoByUrl = this.mLoader.getSessionInfoByUrl(str, xLSessionInfo);
    if (9000 == sessionInfoByUrl) {
        return sessionInfoByUrl;
    }
    XLLog.e(TAG, "XLDownloadManager::getSessionInfoByUrl end, ret=[" + sessionInfoByUrl + "]");
    return sessionInfoByUrl;
}
 
Example #28
Source File: XLDownloadManager.java    From MiniThunder with Apache License 2.0 5 votes vote down vote up
public void run() {
    if (this.m_allow_execution) {
        int networkTypeComplete = XLUtil.getNetworkTypeComplete(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread nettype=" + networkTypeComplete);
        this.this$0.notifyNetWorkType(networkTypeComplete, this.m_loader);
        String bssid = XLUtil.getBSSID(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread bssid=" + bssid);
        this.this$0.notifyWifiBSSID(bssid, this.m_loader);
        XLUtil.NetWorkCarrier netWorkCarrier = XLUtil.getNetWorkCarrier(this.m_context);
        XLLog.d("XLDownloadManager", "NetworkChangeHandlerThread NetWorkCarrier=" + netWorkCarrier);
        this.this$0.notifyNetWorkCarrier(netWorkCarrier.ordinal());
    }
}
 
Example #29
Source File: XLDownloadManager.java    From BtPlayer with Apache License 2.0 5 votes vote down vote up
public int startDcdn(long j, int i, String str, String str2, String str3) {
    int i2 = 9900;
    increRefCount();
    if (mDownloadManagerState == XLManagerStatus.MANAGER_RUNNING && this.mLoader != null) {
        i2 = this.mLoader.startDcdn(j, i, str, str2, str3);
    }
    decreRefCount();
    XLLog.d(TAG, String.format("XLDownloadManager::startDcdn ret=[%d] taskId=[%d] subIndex=[%d] sessionId=[%s] productType=[%s] verifyInfo=[%s]", new Object[]{Integer.valueOf(i2), Long.valueOf(j), Integer.valueOf(i), str, str2, str3}));
    return i2;
}
 
Example #30
Source File: XLDownloadManager.java    From BtPlayer with Apache License 2.0 5 votes vote down vote up
public int getMaxDownloadSpeed(MaxDownloadSpeedParam maxDownloadSpeedParam) {
    if (this.mLoader == null) {
        XLLog.e(TAG, "XLDownloadManager::getMaxDownloadSpeed mLoader is null");
        return 9900;
    }
    int maxDownloadSpeed = this.mLoader.getMaxDownloadSpeed(maxDownloadSpeedParam);
    if (9000 != maxDownloadSpeed) {
        XLLog.e(TAG, "XLDownloadManager::getMaxDownloadSpeed end, ret=[" + maxDownloadSpeed + "]");
        return maxDownloadSpeed;
    }
    XLLog.d(TAG, "XLDownloadManager::getMaxDownloadSpeed end, speed=[" + maxDownloadSpeedParam.mSpeed + "] ret=[" + maxDownloadSpeed + "]");
    return maxDownloadSpeed;
}